Mcrypt扩展不存在

时间:2013-06-03 13:54:06

标签: php macos terminal laravel-4 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'不存在”。

我已经查看了很多类似的问题并尝试通过谷歌找到解决这个问题的方法,但我显然没有做正确的事情。有人请帮忙,所以我可以继续我的项目。谢谢!

5 个答案:

答案 0 :(得分:4)

这是我用来解决问题的网站。即使我已经将extension = mcrypt.so添加到我的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/

答案 1 :(得分:3)

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

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

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

答案 2 :(得分:0)

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

答案 3 :(得分:0)

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

在命令提示符处执行:

which php

这将显示正在使用的PHP版本的路径。如果它应该是不同的,那么将路径添加到正确版本的php到你的环境的$ PATH。

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

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

答案 4 :(得分:0)

继续Rachael的评论(我没有让代表直接发表评论)。

我在Mac上升级MAMP后出现此问题。一切看起来都很好,但我的php.ini仍然引用旧的extension_dir。