使用MAMP启用MCrypt

时间:2017-02-28 09:24:24

标签: php terminal mamp mcrypt

我正在使用MAMP并且我安装了一个新版本的Opencart,它告诉我我没有启用MCrypt,当我去终端并输入:

php -m | grep mcrypt
output: mcrypt

我可以找到该库,但它似乎没有启用。

5 个答案:

答案 0 :(得分:3)

php -m | grep mcrypt返回mcrypt的事实意味着mcrypt库已安装并已启用。

虽然它可能只是为CLI启用。

您可以尝试编辑PHP.ini文件并在; Extensions部分下添加以下行:

extension=mcrypt.so

保存php.ini文件后重启Apache / MAMP。

要查找要编辑的正确php.ini文件,请运行以下命令行:

php --info | grep php.ini

(如果该行已存在,您可能只需删除其前面的;。)

答案 1 :(得分:1)

升级到MAMP 5.1并使用PHP 7.1.20之后,我遇到了这个问题...

我发现的问题不是MAMP PHP没有安装mcrypt,而是确实捆绑了。

问题是MAMP PHP配置选项“ 在命令行上使该版本可用”无法正常运行,因此我在PC上使用的PHP版本命令行[以我为例]是不带mcrypt的macOS默认PHP 7.1.16(默认为macOS中包含的版本)

恢复为旧的cli php别名意味着在命令行上使用了正确的MAMP版本的PHP

已添加到.bash_profile

alias php='/Applications/MAMP/bin/php/php7.1.20/bin/php'

答案 2 :(得分:1)

我尝试了很多方法,但是没有运气。 经过大量试验,终于提出了解决方案。 转到当前活动PHP版本目录中的bin目录。就我而言,它是res = res.join(pd.DataFrame(res.pop('set1').values.tolist())) print(res) id c1 0 1 0 1 abc 123.0 456.0 1 2 def 789.0 NaN 2 3 ghi NaN NaN 您的情况可能有所不同。现在使用sudo运行以下命令

/Applications/MAMP/bin/php/php7.2.8/bin

现在,您应该将sudo ./pecl install channel://pecl.php.net/mcrypt-1.0.1 添加到php.ini中 重新启动MAMP服务并检查其是否正常工作。

答案 3 :(得分:1)

使用Brew:

  1. 安装mcrypt:brew install mcrypt
  2. 在Mamp中:File-> Edit Template-> PHP (php.ini)-> {PHP version}
  3. 在文本中找到“动态扩展程序” ,并在下面添加以下内容(在以';'开头的行之后):

    extension=mcrypt.so

  4. 保存,重新启动和测试(例如,使用php -i | grep mcrypt

答案 4 :(得分:0)

在控制台中尝试

pecl install mcrypt