如何在服务器所在的服务器上获取php二进制文件的路径

时间:2013-09-06 11:25:15

标签: php binary installation production-environment installation-path

我在PHP中使用如下exec命令:

exec("/usr/bin/php /path/to/Notification.php >> /path/to/log_file.log 2>&1 &");

在我的本地环境(MAMP)中,我知道PHP安装路径,因此我可以用/usr/bin/php替换/Applications/MAMP/bin/php/php5.4.10/bin/php。但我不知道PHP安装(PHP二进制文件)在生产服务器上的位置。

3 个答案:

答案 0 :(得分:16)

通常为/usr/bin/php,但您可以尝试捕获并解析命令“whereis php”或“which php'”的输出。

或者更好的是,如果可用,请使用常量PHP_BINARY。看看here

答案 1 :(得分:6)

大多数情况下,PHP_BINARY predefined constant应该完成这项工作。

如果你需要更发达的东西,你可以使用它的Process component类来使用Symfony的PhpExecutableFinder

// composer require symfony/process

use Symfony\Component\Process\PhpExecutableFinder;

(new PhpExecutableFinder)->find();

答案 2 :(得分:0)

尝试以下两个步骤: Updatedb(只需运行一次即可更新定位索引) 找到php | grep -P“ / php $”

locate命令应显示文件名或文件夹名称中带有“ php”的服务器上的所有文件。 “ grep”管道将结果过滤到以“ / php”结尾的内容。