阅读831 返回首页    go 阿里云 go 技术社区[云栖]


PHP扩展导出类

php扩展导出类方式比较简单,可以在已经开发好的php扩展上直接应用,不会影响到原先的应用。只需要更改一下xxx.c(xxx为php扩展的C文件名)

第一步,编写如下代码

static zend_function_entry php_my_class_functions[] = {  PHP_FALIAS(connect, my_connect, NULL)    PHP_FALIAS(close, my_close, NULL)    PHP_FALIAS(delete, my_delete, NULL)  {NULL, NULL, NULL}};
其中的connect,close,delete为类方法,my_connect,my_close,my_delete为php扩展导出方法第二步,建立类与类方法的关联
PHP_MINIT_FUNCTION(my_ylem)
{
    zend_class_entry ylem_class_entry;

    INIT_CLASS_ENTRY(ylem_class_entry, "myClient", php_my_class_functions);

    ylem_class_entry_ptr = zend_register_internal_class(&ylem_class_entry TSRMLS_CC); 

    return SUCCESS;

}
其中myClient为导出类名称。重新编译,安装,就可以在php中使用myClient类了

最后更新:2017-04-02 00:06:29

  上一篇:go [转贴]gprof使用备忘
  下一篇:go 程序设计方式 之 嵌套头文件包含方式