php扩展:如何访问php数组
在php扩展中,时常需要接受php类型的数组作为参数,php数组的参数都是zval类型的,并不适合在扩展中方便的使用,一般都要提前转换成c或cpp中的数据类型。首先看一个转换的例子:
void convert_to_vector(const zval * vals, vector<string> &valList) {
// create the list to write
HashPosition pos;
zval **z_val = NULL;
string value;

zend_hash_internal_pointer_reset_ex( Z_ARRVAL_P( vals ), &pos );

while ( zend_hash_get_current_data_ex( Z_ARRVAL_P( vals ), (void **)&z_val, &pos ) == SUCCESS ) {
convert_to_string_ex( z_val );
value = Z_STRVAL_PP(z_val);

valList.push_back(value);

zend_hash_move_forward_ex( Z_ARRVAL_P( vals ), &pos );
}
}


















声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: C# 实现设置系统环境变量设置
- 下一篇: C#环境变量配置及csc命令详解
copyright © 2008-2019 亿联网络 版权所有 备案号:粤ICP备14031511号-2