我试图在OSX上使用Laravel 4中的迁移函数。然而,我得到以下错误:
Laravel requires the Mcrypt PHP extension.
据我所知,它已经启用了(见下图)。
出了什么问题,我该如何解决?
我试图在OSX上使用Laravel 4中的迁移函数。然而,我得到以下错误:
Laravel requires the Mcrypt PHP extension.
据我所知,它已经启用了(见下图)。
出了什么问题,我该如何解决?
当前回答
如果你正在使用Z Shell,只需执行以下操作:
打开终端 Sudo nano ~/.zshrc 粘贴;导出路径= /应用程序/ MAMP / bin / php / php5.6.10 / bin:美元的道路 保存 执行source ~/.zshrc命令 运行该php -您应该得到MAMP 5.6.10路径
5.6.10是你在MAMP中设置的PHP版本。
其他回答
你安装了MAMP吗?
在终端中使用哪个php来查看您正在使用的php版本。
如果它不是来自MAMP的PHP版本,您应该在用户的主目录中编辑或添加.bash_profile,即:cd ~
在.bash_profile中添加以下行:
export PATH=/Applications/MAMP/bin/php/php5.4.10/bin:$PATH
编辑:首先你应该使用cd /Applications/MAMP/bin/php命令来检查你使用的是MAMP中的哪个php版本,然后用上面的php版本替换。
然后重新启动终端,查看您现在使用的是哪个PHP。
现在应该可以工作了。
对于ubuntu,如果其他步骤不工作,请尝试以下步骤:
cd ~ Sudo apt-get删除php5-mcrypt 安装php5-mcrypt Sudo php5enmod McRypt Sudo服务apache2重启
希望这能有所帮助。谢谢!
我的OS是Yosemite。
我解决了这个问题,通过找到配置路径:
php --ini
示例输出:
Configuration File (php.ini) Path: /usr/local/etc/php/5.5
Loaded Configuration File: /usr/local/etc/php/5.5/php.ini
Scan for additional .ini files in: /usr/local/etc/php/5.5/conf.d
Additional .ini files parsed: (none)
下一个步骤:
重命名或删除php55 ini文件 创建符号链接 重启Apache服务器
命令:
mv /usr/local/etc/php/5.5/php.ini /usr/local/etc/php/5.5/php.ini.default
ln -s /etc/php.ini /usr/local/etc/php/5.5/php.ini
sudo apachectl restart
然后你可以检查你的php模块通过:
php -m
如果你正在使用Z Shell,只需执行以下操作:
打开终端 Sudo nano ~/.zshrc 粘贴;导出路径= /应用程序/ MAMP / bin / php / php5.6.10 / bin:美元的道路 保存 执行source ~/.zshrc命令 运行该php -您应该得到MAMP 5.6.10路径
5.6.10是你在MAMP中设置的PHP版本。
使用Ubuntu
sudo php5enmod mcrypt
帮我搞定了。你不需要重新启动Apache,因为你只需要从CLI使用PHP。