我刚刚安装了php56的brew。然后我想启用一些扩展,比如php_pdo_mysql和php_mysqli,所以我转到我的php.ini文件并取消了相关行的注释,例如:extension=php_mysqli.so,但由于某种原因,我试图启动php,我得到了错误:Warning: PHP Startup: Unable to load dynamic library '/usr/local/Cellar/php56/5.6.10/lib/php/extensions/no-debug-non-zts-20131226/php_pdo_mysql.so'
我的系统上没有这样的目录。我试图找到我的php扩展名的正确位置,但是找不到。我相信我必须拥有它们,因为输入php -m会给出我需要的所有zend模块的列表。我确实有一个文件夹/usr/lib/php/extensions/no-debug-non-zts-20121212,其中只有3个扩展名,但是当我尝试用这个文件替换我的php-config文件的扩展目录部分时,调用phpinfo()仍然列出了旧的缺少的目录。任何帮助弄清楚如何让php访问这些缺失的扩展都将不胜感激!
发布于 2016-04-02 12:41:26
如果我已经很好地理解了这个Github issue,您应该从您的php.ini中删除opcache引用(您将通过执行php -i | grep ini来定位它,并且它可能在/usr/local/etc/php/5.6/php.ini中)。我注释了这两行:
zend_extension=opcache.so
opcache.enable=0为了检索opcache,brew rm php56 && brew install php56 --enable-opcache应该完成这项工作!(虽然我不确定)
https://stackoverflow.com/questions/31038191
复制相似问题