如何在约塞米蒂10.10-PHP5.5.14构建中安装/启用 PHP 和mcrypt?
请注意,以下步骤安装最新的PHP5.5.x
若要检查是否安装了gd和mcrypt,请使用$ php -m显示在模块中编译的内容,如果缺少所需模块,请继续,请参阅接受答案。
GD
因此,Apple安装了GD (您正在使用他们的PHP构建,这很好),但不包括对PNG的支持。
您肯定缺少了“完整”gd (支持png )模块(如果:imagecreatefrompng()函数丢失了)。
"Call to undefined function imagecreatefrompng()"

马库特
使用接受答案安装brew,省略gd安装的部件(除非需要),并使用以下步骤:
$ brew search mcrypt$ brew install php55-mcrypt$ php -m | grep mcrypt确认想在PHP版本之间切换吗?
查看brew-php交换机并按照说明执行。
发布于 2014-10-22 10:37:15
你说得对,Yosemite的内置PHP没有PNG和FreeType支持。
更新2015/10用于El Captian:与OSX10.11 El Capitan PNG支持已恢复,但FreeType仍然缺失。
溶液
使用可以轻松构建和安装完整的PHP,并在Apache的配置中替换它。如果您按照以下步骤执行,整个过程只需10分钟。
快速(但已完成)通过
(注1:我在这里使用的是Homebrew,这是OS的包管理系统。如果您熟悉MacPorts --另一个包管理器-您可以在该系统中获得相同的结果。还可以在您的计算机上并行使用我的Homebrew解决方案。)
(注2:如果您想阅读有关安装过程的所有细节,请查看自制基本安装和自制PHP安装信息。但如果你遵循这些步骤,你真的不需要这样做。)
现在我们走..。
首先安装应用商店的Xcode。如果您已经拥有它,请再次检查App,以确保您已经获得了最新版本!
现在您需要安装Xcode命令行工具。为此,打开一个终端并输入:
xcode-select --install下一个命令将安装系统:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"脚本解释了它将做什么,然后在它做之前停下来。
要输入的下一个命令是一种系统状态测试:
brew doctor这将检查Homebrew安装的基础知识。
我收到一个警告:“您安装了MacPorts或Fink : /opt/local/bin/port .”我成功地忽略了这一点。;)
现在,设置带有我们需要的依赖项的自制/dupes龙头:
brew tap homebrew/dupes设置同样具有我们需要的依赖项的自制/版本点击:
brew tap homebrew/versions然后运行以下命令:
brew tap homebrew/homebrew-php现在您已经准备好最终构建PHP了。对于可用配置选项的列表,您可以运行以下其中之一:
brew options php55
brew options php56但我只是用缺省值就行了。
要做到这一点,请输入(这两个中的一个),这取决于您的需要:
brew install php55
brew install php56(这需要一段时间,请耐心点!)
在Yosemite (10.10.5)上安装php56 (5.6.x)时,有一个bug,请在github上看到这个问题。使用
brew install php56 --without-ldap代替。
如果您得到一个类型的错误“无法找到OpenSSL的”,您没有安装Xcode命令行工具,正如我在开始时告诉您的那样。)继续,安装它们并重新运行最后一个命令。
PHP现在就构建好了,脚本将以有关如何使用它的一些细节结束:
打开httpd.conf (应该位于/private/etc/apache2/httpd.conf),并通过添加--这两行中的一个来启用,这取决于您刚刚安装的PHP版本:
LoadModule php5_module /usr/local/opt/php55/libexec/apache2/libphp5.so
LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so别忘了去评论现有的LoadModule php5_module.行,可能是从约塞米蒂自己的PHP版本!
重新启动Apache
sudo apachectl restart您的新php.ini文件可以在: /usr/local/etc/php/5.5/php.ini中找到。
好好享受!
发布于 2014-10-25 05:20:26
来自@Jpsy的答案是好的,但是还有另一个选择,来自liip,这里的人。这是一个为约塞米蒂预先构建的PHP包(旧版本也能工作),但它只是一行代码:
curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5
在那之后,一切都准备好了,如预期的那样工作。与安装相关的配置非常适合Symfony 2的开发,但它应该与其他用例一起工作。
最后,如果您也需要使用更新的PHP,但不想使用操作系统附带的PHP版本,那么您也可以在.bash_profile或类似的代码中添加以下内容:
export PATH=/usr/local/php5/bin:$PATH
发布于 2015-01-05 20:10:02
我没有足够的代表来发表评论,但是如果您正在为Yosemite使用OS ( App中的版本4),需要编辑的文件是:
/library/server/web/config/apache2/httpd_server_app.conf
我的现在看起来像这样,并且证实它在使用了来自自制的php5.6之后就可以工作了。
#LoadModule php5_module libexec/apache2/libphp5.so
LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.sohttps://stackoverflow.com/questions/26493762
复制相似问题