Mcrypt扩展不存在



当我尝试为Laravel 4更新我的作曲家时,我在我的终端上遇到了一个问题。我一直得到"Laravel需要Mcrypt PHP扩展"。

当我再次检查我的安装时,它显示我的mcrypt已经安装好了。

Rachaels-MacBook-Pro-2:DRCSports rachaelhill$ brew upgrade mcrypt
Error: mcrypt-2.5.8 already installed
Rachaels-MacBook-Pro-2:DRCSports rachaelhill$ brew upgrade php54-mcrypt
Error: php54-mcrypt-5.4.15 already installed

当研究谷歌类似的问题,我发现它是,因为我的命令行使用不同的PHP,我只需要启用mcrypt。所以我被建议修复这个是在终端运行…

/usr/bin/env php --ri mcrypt

但是当这样做时,我收到的输出是,"扩展名'mcrypt'不存在"。

我看过许多类似的问题,并试图通过谷歌找到一种方法来解决这个问题,但我显然只是没有做正确的事情。请有人帮帮我,这样我就可以继续我的项目了。谢谢你!

这是我用来解决我的问题的网站。尽管我添加了extension=mcrypt。所以我的php.ini我也不得不回去添加extension_dir = "/usr/lib/php/extensions/no-debug-non-zts-20090626/"。下面的链接将一步一步地向您展示,但我需要的是在它的最后。

http://www.coolestguyplanettech.com/how-to-install-mcrypt-for-php-on-mac-osx-lion-10-7-development-server/

系统的PHP二进制文件安装在/usr/bin/PHP -这是默认安装的。

安装MAMP或XAMPP不会影响这个。相反,您需要找到MAMP或XAMPP的PHP二进制文件的路径,并将其添加到shell的$ path中。

如果您将XAMPP安装到默认位置(/Applications/XAMPP),那么您可以将export PATH="/Applications/XAMPP/xamppfiles/bin:$PATH"添加到~/的末尾。bash_profile并重启终端窗口

我有同样的问题,我解决了将/usr/bin/php中的PHP可执行文件重命名为/usr/bin/php(例如)在该目录中创建一个符号链接,而不是指向mamp目录中的PHP文件。

您的环境中可能安装了多个PHP版本。确保你用的是正确的。

在命令提示符处做:

which php

将显示所使用的PHP版本的路径。如果它应该是一个不同的路径,那么将正确版本的php的路径添加到您环境的$ path中。

你可能会发现这也很有用:

http://mac.tutsplus.com/tutorials/server/upgrading-the-native-php-installation-on-os-x-mountain-lion/

对于Rachael的评论(我没有代表直接评论)

我在Mac上升级MAMP后遇到了这个问题。一切看起来都很好,但我的php.ini仍然引用旧的extension_dir.