Как получить путь к двоичному файлу php на сервере, где он находится

Я использую команду exec как exec ниже в PHP:

 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-двоичная) находится на рабочем сервере.

Обычно это /usr/bin/php но вы можете попытаться захватить и проанализировать вывод команды « whereis php » или « which php' ».

Или еще лучше, используйте константу PHP_BINARY если она доступна. Посмотрите здесь .

В большинстве PHP_BINARY предопределенная константа PHP_BINARY должна выполнять эту работу.

Если вам нужно что-то более развитое, вы можете использовать компонент процесса Symfony, используя его класс PhpExecutableFinder :

 // composer require symfony/process use Symfony\Component\Process\PhpExecutableFinder; (new PhpExecutableFinder)->find();