【发布时间】:2013-09-12 17:50:24
【问题描述】:
我遇到以下问题 - 在我的 Laravel 4 安装文件夹中使用 phpunit 时出现以下错误:
Laravel requires the Mcrypt PHP extension.
但是,当我使用artisan 命令时它不会出现。我知道这个问题一定是由于 phpunit 加载了另一个 php.ini 而不是我的 zshconfig 中设置的那个。
不幸的是,我不知道如何强制 phpunit 使用正确的。
我的 .zshconfig 看起来像这样:
# Customize to your needs...
export PATH=:/Applications/MAMP/Library/bin/:/Users/jacekbandura/pear/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/texbin/:/Users/jacekbandura/nasm
export PATH=/Applications/MAMP/bin/php/php5.4.10/bin:$PATH
PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting
我使用的是 OS X 10.8.4 和 MAMP。
以前有人解决过这个问题吗? 在此先感谢:)
【问题讨论】:
-
它可能正在运行您的 mac 的默认 PHP 可执行文件 (
/usr/bin/env php),而不是简单地加载错误的 php.ini 文件。您的自定义路径是否包含 php 可执行文件的路径(在 CLI 上运行 php 时调用的路径)还是仅包含 php.ini? -
如何查看?我已经发布了 .zshconfig 内容。我尝试添加
/Applications/MAMP/bin/php/php5.4.10/bin/php,但似乎没有帮助。 -
这是在终端中手动运行 phpunit 时,还是以任何方式自动运行?如果您愿意,您可以直接编辑 phpunit 可执行文件并将
#!/usr/bin/env php替换为#!/Applications/MAMP/bin/php/php5.4.10/bin/php。不是最推荐的做法... -
旁注:对于未来的项目,考虑使用 Vagrant 或其他虚拟机,这样您就不必在非标准位置使用 PHP 和其他二进制文件(直接在您的 mac 上开发对于几乎一切)。
标签: php laravel phpunit mcrypt