你是对的,Yosemite 的内置 PHP 不支持 PNG 和 FreeType。
El Captian 2015/10 更新:使用 OS X 10.11 El Capitan PNG 支持又回来了,但仍然缺少 FreeType。
解决方案
使用 Homebrew 包管理器轻松构建和安装完整的 PHP 并在 Apache 的配置中替换它。如果您按照以下步骤操作,整个过程只需大约十分钟。
快速(但完整)的遍历
(注 1:我在这里使用Homebrew,这是一个 OS X 的包管理系统。如果您熟悉MacPorts - 另一个包管理器 - 您可以使用该系统获得相同的结果。也可以并行使用我的 Homebrew 解决方案您机器上现有的 MacPorts 安装。)
(注 2:如果您想阅读有关安装过程的所有详细信息,请查看Homebrew 基本安装和Homebrew PHP 安装信息。但如果您真的不需要你按照这些步骤。)
现在让我们走吧...
首先从 App Store 安装 Xcode。如果您已经拥有它,请再次检查 App Store,以确保您拥有最新版本!
现在您需要安装Xcode 命令行工具。为此,请打开终端并输入:
xcode-select --install
下一个命令将安装 Homebrew 包管理器系统:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
该脚本解释了它将做什么,然后在它执行之前暂停。
下一个要输入的命令是一种系统状态测试:
brew doctor
这将检查 Homebrew 安装的基础知识。
我收到一条警告“您已安装 MacPorts 或 Fink:/opt/local/bin/port ...”,但我成功忽略了它。;)
现在设置 homebrew/dupes 水龙头,它具有我们需要的依赖项:
brew tap homebrew/dupes
设置 homebrew/versions 水龙头,它也有我们需要的依赖:
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) 时出现错误,请在 github 上查看此问题。改为使用brew install php56 --without-ldap
。
如果您收到“无法找到 OpenSSL”类型的错误,则您没有安装 Xcode 命令行工具,正如我在开始时告诉您的那样。;) 继续,安装它们并重新运行最后一个命令。
PHP 现在已构建,脚本将以有关如何使用它的一些详细信息结束:
打开 httpd.conf(应该位于 /private/etc/apache2/httpd.conf)并通过添加这两行之一来启用 PHP ,具体取决于您刚刚安装的 PHP 版本:
LoadModule php5_module /usr/local/opt/php55/libexec/apache2/libphp5.so
LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so
不要忘记注释掉Yosemite 自己的 PHP 版本中可能存在的任何现有LoadModule php5_module...行!
重启阿帕奇
sudo apachectl restart
您可以在以下位置找到新的 php.ini 文件:/usr/local/etc/php/5.5/php.ini
享受!