PHP предупреждения после обновления Mavericks

После обновления моего Mac до Mavericks у меня было несколько небольших проблем с машиной, большинство из которых я решил, однако, когда я пытаюсь запустить PHP-скрипты из командной строки, я не получаю эти предупреждения...

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20100525/yaml.so' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20100525/yaml.so, 9): image not found in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20100525/apc.so' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20100525/apc.so, 9): image not found in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20100525/intl.so' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20100525/intl.so, 9): image not found in Unknown on line 0

Каталог /usr/lib/php/extensions/no-debug-non-zts-20100525/ существует, но там есть только файлы xdebug.so & mcryt.so.

Я попытался установить расширение yaml, используя pecl но он говорит, что он уже установлен.

Если я бегу sudo php -a скорее, чем php -a тогда другие ошибки исчезнут. Какие разрешения мне нужно установить для какой папки, чтобы это работало для учетных записей без прав администратора?

2 ответа

Что происходит, так это то, что ошибка конфликтует с версиями PHP. У вас должны быть расширения, оставшиеся от предыдущей установки PHP.

Что вы можете сделать, это удалить ext-intl.so файл из вашей старой версии PHP. Я скопировал содержимое (скорее всего, это только extension='/usr/local/Cellar/php55/phpx/) к моему php.ini файл, закомментируйте эти параметры, а затем удалите ext-intl.so файлы, исправляющие эту проблему.

Запустите эту команду:

diff /etc/php5/apache2/php.ini /etc/php5/cli/php.ini

или же

find /etc/* -name php.ini
diff /etc/.../apache2/php.ini /etc/.../cli/php.ini

Может быть, есть какая-то разница, которая дает вам ответ.

Другие вопросы по тегам