2016-10-31 9 views
0

Я использую MAMP Pro для управления средами разработки, PHP - версия 7.0.12 и работает в режиме модуля.Сделать установленное расширение PCNTL доступным для командной строки PHP в MAMP

Я добавил модуль pcntl для PHP и скомпилировал его по направлениям от this answer.

Файл pcntl.so находится в моей папке /Applications/MAMP/bin/php/php7.0.12/lib/php/extensions/no-debug-non-zts-20151012. Кроме того, на моем vhost я могу вывести phpinfo() и убедиться, что расширение установлено и дополнительно проверено на function_exists('pcntl_signal'), которое возвращает true.

Однако я не могу заставить его работать при запуске PHP с терминала. Я использую тот, который устанавливает MAMP, и вызываю его через /Applications/MAMP/bin/php/php7.0.12/bin/php. Однако, я получаю ошибку, что функция pcntl_signal не существует.

Также работает /Applications/MAMP/bin/php/php7.0.12/bin/php -i | grep pcntl ничего не выводит.

Есть ли способ сделать модуль pcntl доступным для PHP через командную строку в дополнение к тому, что использует один apache?

+1

Обычно модуль и версию CLI РНР используйте отдельные файлы 'php.ini'. Может быть, вы упомянете новый модуль только в одном из них? – arkascha

ответ

0

Существует два отдельных ini-файла, которые MAMP использует для PHP.

Один из них можно редактировать с помощью графического интерфейса, а другой нужно отредактировать вручную. Для этого PHP версии расширение должно быть добавлено в /Applications/MAMP/bin/php/php7.0.12/conf/php.ini

После добавления extension=pcntl.so в вышеприведенном ини файла, Запущенные php -i | grep pcntl Волю

pcntl

pcntl support => enabled