Я хочу начать использовать phpDocumentor, и ручная установка продолжает выдавать ошибку обо мне, не установив detect_unicode = Off в моем php.ini в Terminal.
Когда я добавляю его в свой php.ini, он не берет, и я получаю ту же проблему при запуске установки. Кажется, что у этой проблемы нет, и для жизни я не могу понять.
https://github.com/phpDocumentor/phpDocumentor2/blob/develop/README.md#installation
Что мне не хватает? (Я перезапустил сервер MAMP после редактирования php.ini)
Скриншот ошибки в терминале …
Если у вас установлен MAMP / MAMP Pro, проблема в том, что версия PHP, доступная для вашего терминала, скорее всего, будет версией системы, расположенной в:
/private/etc/
У меня была такая же проблема, но в моем случае у меня не было файла php.ini в этом каталоге, поэтому лучший способ его разрешить – просто создать символическую ссылку на версию PHP, используемую в настоящее время в вашей установке MAMP / MAMP Pro :
php.ini -> /Applications/MAMP/bin/php/php5.3.14/conf/php.ini
Это решает проблему. Просто измените php версию php5.3.14
на любую версию PHP, которую вы выбрали для использования в MAMP.
Как упоминается выше в @moderndegree, вы можете в дальнейшем сделать это доступным для терминала в будущем, отредактировав переменную пути в bash / zsh / etc:
export PATH="/Applications/MAMP/bin/php/php5.3.14/bin:$PATH"
Вы не должны редактировать правильный php.ini, если он все еще включен. Запустить php -i | grep ini
php -i | grep ini
чтобы найти все загруженные файлы ini.
Соответствующими строками являются следующие:
Loaded Configuration File => ... Additional .ini files parsed => ...
Проблема в том, что вы, вероятно, попадаете в другую установку php.
Попробуйте следующее:
which php
Если вы получаете что-либо иное, /Applications/MAMP/bin/...
, вам необходимо обновить среду, чтобы указать на установку MAMP.
Для этого вам нужно добавить следующее в .bash_profile (пожалуйста, обновите путь, соответствующий вашей настройке):
export PATH="/Applications/MAMP/bin/php/php5.3.6/bin:$PATH"
Перезагрузите файл .bash_profile с помощью следующей команды:
source .bash_profile
После этого вы должны указывать на правильную установку php. Попробуйте еще раз подтвердить which php
. Теперь запустите php -i | grep ini
php -i | grep ini
чтобы подтвердить, что загружается правильный файл php.ini
. Как сказал Селдаек, соответствующие строки:
Loaded Configuration File => ... Additional .ini files parsed => ...
Насколько я помню, MAMP использует шаблоны конфигурации. Поэтому вы должны отредактировать шаблон php.ini. Фактический php.ini будет восстанавливаться из шаблона каждый раз при перезапуске MAMP.
Я столкнулся с той же проблемой для composer-php, и я добавляю эту строку вручную в файл php.ini. Как это:
sudo /private/etc/php.ini
затем добавьте эту строку «detect_unicode = Off»
detect_unicode = Off
затем его работу и я установил композитора. Вы можете увидеть это как отключить параметр «detect_unicode» от php.ini? (пытается установить Composer)
Если вы не можете изменить файл /usr/local/bin/php/php.ini, не забудьте использовать '-d detect_unicode = Off' для всех ваших php-вызовов:
curl -s https://getcomposer.org/installer | php -d detect_unicode=Off php -d detect_unicode=Off composer.phar install
Если вы можете изменить файл php.ini, добавьте следующее в конец вашего php.ini
:
detect_unicode = Off