php - 如何创建一个空的 op_array?

标签 php c opcode php-internals

在我的 PHP 扩展中,如何创建一个没有操作码的 op_array?

最佳答案

您可以使用 init_op_array(),在 zend_compile.h 中声明:

zend_op_array * op_array = emalloc(sizeof(zend_op_array));
init_op_array(op_array, type, INITIAL_OP_ARRAY_SIZE TSRMLS_CC);

类型可以是 ZEND_EVAL_CODE 或 ZEND_USER_FUNCTION。

关于php - 如何创建一个空的 op_array?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4406375/

相关文章:

php - 将错误记录到文件 (PHP + IIS6 + FastCGI + Win2003 Server)

php - 一次从多个表中删除行

c - 接收到的缓冲区包含带有一些垃圾值的实际数据

c++ - 如何使用算术生成预处理器定义?

java - Java 类文件上的 ACC_SUPER 访问标志的目的是什么?

PHP页面中途停止加载,使用ODBC、数据源、MSSQL

php - 显示第一个子句值,然后显示第二个子句值

c - 使用 fscanf() 与 fgets() 和 sscanf()

c++ - 解码和匹配C/C++中的Chip 8操作码

assembly - 为什么即使包含 JUMPDEST 也无法跳转到指令?