将服务器从php5.4迁移到php7.2后,oci8不工作。
升级过程:
一。删除php包
2。安装php72u common+some extras。
结果:
PHP Warning: PHP Startup: Unable to load dynamic library 'oci8.so' (tried: /usr/lib64/php/modules/oci8.so (/usr/lib64/php/modules/oci8.so: undefined symbol: _zend_list_delete), /usr/lib64/php/modules/oci8.so.so (/usr/lib64/php/modules/oci8.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
PHP 7.2.10 (cli) (built: Sep 13 2018 16:53:29) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.10, Copyright (c) 1999-2018, by Zend Technologies
我在谷歌上找不到任何有用的信息。请帮助(这是生产服务器)
编辑:
肯定不是关于错误的php.ini
扩展名=oci8.so
输出:
PHP Warning: PHP Startup: Unable to load dynamic library 'oci8.so' (tried: /usr/lib64/php/modules/oci8.so (/usr/lib64/php/modules/oci8.so: undefined symbol: _zend_list_delete), /usr/lib64/php/modules/oci8.so.so (/usr/lib64/php/modules/oci8.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
扩展=oci8
输出:
PHP Warning: PHP Startup: Unable to load dynamic library 'oci8' (tried: /usr/lib64/php/modules/oci8 (/usr/lib64/php/modules/oci8: cannot open shared object file: No such file or directory), /usr/lib64/php/modules/oci8.so (/usr/lib64/php/modules/oci8.so: undefined symbol: _zend_list_delete)) in Unknown on line 0
/usr/lib64/php/modules/oci8.so存在。
最佳答案
/usr/lib64/php/modules/oci8.so.so: cannot open shared object file
在你的字符串末尾有一个额外的.so
。你的php.ini中可能有这个:
extension = oci8.so
更改为:
extension = oci8
关于php - php7.2和oci8冲突,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52973680/