优胜美地/ El Capitan php-gd + mcrypt安装

如何在Yosemite 10.10中安装/启用php-gdmcrypt – PHP 5.5.14 build?

请注意以下步骤安装最新的PHP 5.5.x

要检查您是否安装了gd和mcrypt,请使用$ php -m以模块forms编译,如果缺less所需的模块,请继续阅读已接受的答案


GD

所以,苹果公司安装了GD(而且你正在使用他们的PHP版本,这很好),但是不包括对PNG的支持。

如果缺lessimagecreatefrompng()函数,你肯定会缺less“full” gd(带有png支持)模块。

"Call to undefined function imagecreatefrompng()"

在这里输入图像描述


这个Mcrypt

使用接受的答案安装brew,并使用gd安装省略部分(除非您需要),并使用以下步骤:

  1. 做search – $ brew search mcrypt
  2. select你想要的PHP版本
  3. 安装 – $ brew install php55-mcrypt
  4. 确认使用$ php -m | grep mcrypt $ php -m | grep mcrypt

想要在PHP版本之间切换?

检查brew-php-switcher并按照说明进行操作。

你是对的,优胜美地的内置PHP没有PNG和FreeType支持。
El Captian更新2015/10:使用OS X 10.11 El Capitan PNG支持已恢复,但FreeType仍然丢失。

使用Homebrew软件包pipe理器轻松地构build和安装完整的PHP,并将其replace为Apache的configuration。 如果您按照以下步骤进行,整个过程只需要十分钟。

一个快速(但完整)走过

(注1:我在这里使用Homebrew是一个OS X的包pipe理系统,如果你熟悉MacPorts – 另一个包pipe理器 – 你可以得到与该系统相同的结果,也可以并行使用我的Homebrew解决scheme机器上现有的MacPorts安装。)
(注2:如果你想阅读关于安装过程的所有细节,可以看一下Homebrew的基本安装和Homebrew的PHP安装信息,但是如果你按照这些步骤操作,你真的不需要这样做。

现在我们走吧

首先从App Store安装Xcode 。 如果你已经有了,请再次查看App Store,以确保你已经有了最新的版本!

现在您需要安装Xcode命令行工具 。 为此,请打开terminal并input:

 xcode-select --install 

下一个命令将安装Homebrew软件包pipe理器系统:

 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 

剧本解释了它会做什么,然后在做之前暂停。

下一个进入的命令是一种系统状态testing:

 brew doctor 

这将检查自制程序安装的基本知识。
我收到了一个警告: “你已经安装了MacPorts或Fink:/ opt / local / bin / port …” ,我忽略了这一点。 ;)

现在设置我们需要依赖关系的自制软件/ dupes tap:

 brew tap homebrew/dupes 

设置自制软件/版本的水龙头,也有我们需要的依赖关系:

 brew tap homebrew/versions 

然后运行以下命令:

 brew tap homebrew/homebrew-php 

现在您已经准备好最终构buildPHP。 有关可用configuration选项的列表,您可以运行下列其中一个选项:

 brew options php55 brew options php56 

但我很好,只是使用默认值。
为此,请根据您的需要input以下两项之一:

 brew install php55 brew install php56 

(这需要一段时间,请耐心等待!)

在Yosemite(10.10.5)上安装php56(5.6.x)的时候有一个bug,请在github上看到这个问题 。 使用brew install php56 --without-ldap来代替。

如果你得到一个types为“找不到OpenSSL的”的错误,你还没有安装Xcode命令行工具,正如我在开始时所说的那样。 ;)继续,安装它们并重新运行最后的命令。

PHP现在已经构build完毕,脚本将以一些关于如何使用它的细节结束:

打开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 

不要忘记评论任何现有的LoadModule php5_module …行,可能是从优胜美地自己的PHP版本!

重新启动Apache

 sudo apachectl restart 

您的新php.ini文件可以在以下位置find: /usr/local/etc/php/5.5/php.ini

请享用!

@Jpsy的回答很好,但是还有另外一个select,来自liip的人, 在这里 。 这是一个为Yosemite预先构build的PHP包(旧版本也可以),但它只是一行代码:

curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5

之后,一切都准备好按预期工作。 该安装附带的configuration非常适合Symfony 2的开发,但是对于其他用例应该可以正常工作。

最后,如果您还需要使用更新的PHP CLI,但是您不想使用操作系统附带的PHP版本,那么您也可以添加到.bash_profile或类似的代码行中:

export PATH=/usr/local/php5/bin:$PATH

我没有足够的代表发表评论,但如果您使用OS X服务器优化软件(版本4从App Store)编辑的文件是:

/library/server/web/config/apache2/httpd_server_app.conf

我现在看起来像这样,并确认它是从自制软件使用PHP 5.6后工作。

 #LoadModule php5_module libexec/apache2/libphp5.so LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so 

标准的Apache随Yosemite一起提供的文件进行更新

 sudo brew install php55 

/etc/apache2/httpd.conf

请注意,php.ini的位置也发生了变化。 与Yosemite合作的标准版本位于/etc/php.ini,自制版本位于/usr/local/etc/php/5.5/php.ini