PHP内核
在Zend Engine 2 (PHP5+)中,arginfo的数据是由多个zend_arg_info结构体构成的数组,数组的每一个成员即每一个zend_arg_info结构体处理函数的一个参数。zend_arg_info结构体的定义如下:
typedef struct _zend_arg_info { const char *name; /* 参数的名称*/ zend_uint name_len; /* 参数名称的长度*/ const char *class_name; /* 类名 */ zend_uint class_name_len; /* 类名长度*/ zend_bool array_type_hint; /* 数组类型提示 */ zend_bool allow_null; /* 是否允许为NULL */ zend_bool pass_by_reference; /* 是否引用传递 */ zend_bool return_reference; /* 返回值是否为引用形式 */ int required_num_args; /* 必要参数的数量 */ } zend_arg_info;