php-json之undefined symbol: php_json_decode_ex
当使用php的zephir的时候,报了以下错误
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/poem.so' - /usr/lib64/php/modules/poem.so: undefined symbol: php_json_decode_ex in Unknown on line 0
意思是没有找到php-json扩展的意思,那么我yum安装了 php-json了,为什么还报错。
查了许多原来是我的 zephir.so 在 json.so 扩展前先加载了,就是引入先后顺序问题,那么我在zephir.so前引入json.so就ok了。以下是php配置文件
/etc/php.ini
extension=json.so extension=poem.so
这样就正常运行了我的zephir扩展但是有报了个warning
PHP Warning: Module 'json' already loaded in Unknown on line 0
因为yum安装好json已经引入了json了,在
/etc/php.d/json.ini里面注释掉
; Enable json extension module ; extension=json.so
在运行就ok了