# /usr/local/php/bin/phpizeCannot find config.m4.Make sure that you run '/usr/local/php/bin/phpize' in the top level source directory of the module修改方法:[root@centos lnmp]# cd php-5.2.14ext/[root@centos ext]# ./ext_skel --extname=my_moduleCreating directory my_moduleCreating basic files: config.m4 config.w32 .cvsignore my_module.c php_my_module.h CREDITS EXPERIMENTAL tests/001.phpt my_module.php [done].To use your new extension, you will have to execute the following steps:1. $ cd ..2. $ vi ext/my_module/config.m43. $ ./buildconf4. $ ./configure --[with|enable]-my_module5. $ make6. $ ./php -f ext/my_module/my_module.php7. $ vi ext/my_module/my_module.c8. $ makeRepeat steps 3-6 until you are satisfied with ext/my_module/config.m4 andstep 6 confirms that your module is compiled into PHP. Then, start writingcode and repeat the last two steps as often as necessary.[root@centos ext]# cd my_module/[root@centos my_module]# vim config.m4根据你自己的选择将dnl PHP_ARG_WITH(my_module, for my_module support,dnl Make sure that the comment is aligned:dnl [ --with-my_module Include my_module support])修改成PHP_ARG_WITH(my_module, for my_module support,Make sure that the comment is aligned:[ --with-my_module Include my_module support])或者将dnl PHP_ARG_ENABLE(my_module, whether to enable my_module support,dnl Make sure that the comment is aligned:dnl [ --enable-my_module Enable my_module support])修改成PHP_ARG_ENABLE(my_module, whether to enable my_module support,Make sure that the comment is aligned:[ --enable-my_module Enable my_module support])[root@centos my_module]# vim my_module.c将文件其中的下列代码进行修改/* Every user visible function must have an entry in my_module_functions[].*/function_entry my_module_functions[] = {PHP_FE(say_hello,    NULL) /* ?添加着一行代码 */PHP_FE(confirm_my_module_compiled,   NULL) /* For testing, remove later. */{NULL, NULL, NULL}   /* Must be the last line in my_module_functions[] */};在文件的最后添加下列代码PHP_FUNCTION(say_hello){zend_printf("hello sdomain!");}再修改:php_sdomain.hvi php_sdomain.h在PHP_FUNCTION(confirm_my_module_compiled ); /* For testing, remove later. */ 这行的下面添加一行:PHP_FUNCTION(say_hello); /* For testing, remove later. */保存文件退出然后我们就可以在这个目录下使用上面的命令了/usr/local/php/bin/phpize执行以后会看到下面的[root@ns sdomain]# /usr/local/php/bin/phpizeConfiguring for:PHP Api Version:     20020918Zend Module Api No:   20020429Zend Extension Api No:  20050606[root@ns sdomain]#然后执行./configure --with-php-config=/usr/local/php/bin/php-config然后执行makemake install然后他会把对应的so文件生成放到PHP安装目录下面的一个文件夹,并提示在在什么地方,然后再把里面的SO文件拷到你存放SO文件的地方即你在php.ini里面的extension_dir所指定的位置最后一步是你在php.ini文件中打开这个扩展extension=sdomain.so然后重新起动apache

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。