默认加载自定义安装的 PHP

Posted

技术标签:

【中文标题】默认加载自定义安装的 PHP【英文标题】:Loading custom installed PHP as default 【发布时间】:2015-02-14 20:35:55 【问题描述】:

我已经使用php-osx 安装了最新版本的 PHP,它在我的 apache Web 服务器上按预期工作。但问题是当我尝试在 Laravel 中运行 artisan 命令时,它会要求 mcrypt 模块才能运行该命令。或者当我尝试通过homebrew 安装Composer 时,它会要求openssl 模块。尽管 mcrypt 和 openssl 都在 phpinfo() 中启用。所以我的猜测是终端中的 php 命令与 apache 中加载的 php 不同。这就是我的/etc/paths 文件的样子:

/usr/local/bin
/usr/local/mysql/bin
/usr/bin
/bin
/usr/sbin
/sbin

这是echo $PATH的输出:

/usr/local/mysql/bin
/usr/local/memcached/bin
/usr/local/bin
/usr/local/mysql/bin
/usr/bin
/bin
/usr/sbin
/sbin

有没有办法让自定义安装的php成为终端默认使用的?

【问题讨论】:

通常$PATH环境变量取代/etc/paths,所以做一个echo $PATH看看那里的顺序 感谢@AxelAmthor 的信息,用输出编辑了帖子。但在我看来,它与paths 文件并没有什么不同。 【参考方案1】:

你可以改变它。但是,如果您有一些使用已安装 PHP 版本的内部程序,这可能会产生一些问题。您可以使用 Mac-Port 并安装缺少的软件包。

sudo port install php5-openssl

https://www.macports.org/

【讨论】:

【参考方案2】:

你会更适合 Laravel Homestead,它已经提供了在 Vagrant Box 中运行 Laravel 所需的一切

http://laravel.com/docs/4.2/homestead

【讨论】:

以上是关于默认加载自定义安装的 PHP的主要内容,如果未能解决你的问题,请参考以下文章

编程技巧│php 自定义安装扩展

编程技巧│php 自定义安装扩展

编程技巧│php 自定义安装扩展

编程技巧│php 自定义安装扩展

编程技巧│php 自定义安装扩展

php-7.0.18版本(编译安装)-自定义安装路径