我有一些
PHP脚本以#!/usr/bin/env PHP开头.默认解释器是PHP 4.4,但脚本需要PHP 5.3,所以我在〜/ .bashrc中创建了一个别名:
alias PHP="/usr/local/bin/PHP5-53LATEST-CLI"
因此调用PHP -v显示5.3但#!/usr/bin/env PHP仍然使用4.4.我不会改变脚本.那么如何使用#!/usr/bin/env PHP获取PHP 5.3?
/usr/bin/env PHP在当前$PATH中查找名为PHP的可执行文件;它不需要关注别名,shell函数等.如果你想要它执行PHP v5.3,你必须将该版本放在名为PHP的目录中,并将该目录放在PATH的某个目录之前的某个目录中版本4.4.也许是这样的:
mkdir /usr/local/bin/PHP-overrides ln -s /usr/local/bin/PHP5-53LATEST-CLI /usr/local/bin/PHP-overrides/PHP
…然后加
PATH="/usr/local/bin/PHP-overrides:$PATH"
到你的〜/ .bash_profile(或其他适当的启动脚本).