我想开始使用phpDocumentor并且手动安装不断引发错误,因为我没有在终端的php.ini中设置 detect_unicode = Off 。
当我将它添加到我的php.ini时它不需要,我在运行安装时会遇到同样的问题。似乎没有人有这个问题,而对于我的生活,我无法弄明白。
https://github.com/phpDocumentor/phpDocumentor2/blob/develop/README.md#installation
我错过了什么? (我在php.ini编辑后重新启动了MAMP服务器)
终端错误的屏幕截图...
答案 0 :(得分:8)
如果您安装了MAMP / MAMP Pro,那么问题是您的终端可用的PHP版本很可能是位于以下位置的系统版本:
/private/etc/
我遇到了同样的问题,但在我的情况下,我在该目录中没有php.ini文件,因此解决它的最佳方法是创建一个符号链接,指向当前在MAMP中使用的PHP版本/ MAMP Pro安装:
php.ini -> /Applications/MAMP/bin/php/php5.3.14/conf/php.ini
解决了这个问题。只需将php版本php5.3.14
更改为您选择在MAMP中使用的任何PHP版本。
正如@moderndegree上面提到的那样,您可以通过在bash / zsh / etc中编辑路径变量来选择将其提供给终端:
export PATH="/Applications/MAMP/bin/php/php5.3.14/bin:$PATH"
答案 1 :(得分:4)
如果仍然启用,则不得编辑正确的php.ini。运行php -i | grep ini
以查找已加载的所有ini文件。
相关的行是那两个:
Loaded Configuration File => ...
Additional .ini files parsed => ...
答案 2 :(得分:4)
问题是你可能正在进行不同的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.ini
文件。正如塞尔达克所说,相关的路线是:
Loaded Configuration File => ...
Additional .ini files parsed => ...
答案 3 :(得分:0)
我记得,MAMP使用配置模板。所以你应该编辑php.ini模板。每次重启MAMP时,都会从模板中重新生成实际的php.ini。
答案 4 :(得分:0)
我面对composer-php的同样问题,我手动将这一行添加到php.ini文件中。像这样:
sudo /private/etc/php.ini
然后添加此行“detect_unicode = Off”
detect_unicode = Off
然后它的工作,我安装了作曲家。你可以看到这个 How to disable "detect_unicode" setting from php.ini? (trying to install Composer)
答案 5 :(得分:0)
如果您无法更改/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