#php #pdo #command-line-interface
#php #pdo #интерфейс командной строки
Вопрос:
MAMP 3.05 из коробки дал мне PHP 5.5.10 и PHP CLI 5.4.24. Я работаю на Mac OSX 10.9.3.
PHP отлично работает, когда я ввожу URL-адрес в браузере, но CLI выдает мне ошибки, подобные этой, в файле журнала:
PHP Warning: PHP Startup: pdo_mysql: Unable to initialize module
Module compiled with module API=20121212
PHP compiled with module API=20100525
These options need to match
in Unknown on line 0
Поэтому мой PDO-материал не будет работать. Он не сообщает о каких-либо сбоях в файле журнала; мой вызов new PDO
просто приводит к молчаливому завершению работы скрипта. php -m
показывает, что PDO есть. В файле журнала есть другие предупреждения о других модулях с той же проблемой: «Эти параметры должны совпадать».
Другие ответы на подобные вопросы не дают мне особого повода для размышлений; в некоторых из них говорится, что PHP необходимо перекомпилировать. Но я не компилировал PHP — он поставлялся с MAMP. Просто ли PHP CLI не работает должным образом при готовой установке MAMP? Есть ли какой-нибудь способ заставить это работать без перестройки, или мне просто нужно его перестроить?
Комментарии:
1. Существует также XAMP, возможно, немного более мощный и ориентированный на разработчиков ..
2. Почему вы смешиваете версии PHP и PHP CLI? Если вам действительно нужно иметь две версии PHP, убедитесь, что веб-сервер не использует версию CLI и что версия CLI не использует расширения версии веб-сервера.
3. @Reuben Я не смешиваю версии, по крайней мере, не намеренно. Это готовый MAMP.
4. Знаете ли вы о втором файле php.ini для CLI, вам следует дважды проверить, установлен ли модуль
5. Это ужасно сбивает с толку, позволяя настраивать продукт с одной версией PHP для web и одной версией PHP для CLI. Я понимаю, если они предоставляют две версии PHP, но запускают только по одной за раз, и переключение как веб-сервера, так и CLI одновременно было бы нормой. Возможно, вам потребуется попробовать их программу переключения версий PHP и убедиться, что запущен только PHP 5.5.10 для веб-сервера и для CLI. При переключении версий PHP обязательно перезапускайте все сеансы терминала, чтобы путь обновлялся.