Функция php exec () и разные хосты
У меня есть скрипт, который выполняет файл в нескольких каталогах вниз, который выглядит следующим образом:
<code>exec("php-cli $file_path > /dev/null 2>/dev/null &"); //php command-line </code>
Это работает на большинстве хостов, но некоторым хостам это не нравится, и он не запускается без каких-либо ошибок.
Для хостов, на которых это не удается, я использую
<code>exec("php $file_path > /dev/null 2>/dev/null &"); //notice the -cli is gone </code>
Который работает отлично.
$ file_path - полный путь к исполняемому файлу /home/blah/path/blah.php
Как я могу сделать эту униформу, чтобы она работала на всех серверах (по крайней мере, Unix)
**EDIT**
Ну, я делаю это таким образом, это (скорее всего) не правильный путь, но это работает.
Вместо того, чтобы просто использовать php-cli или php, я использую оба, так что, если один выходит из строя, другой проходит. Либо php работает как cgi или cli, и один из них перехватит, и, поскольку нет выходных данных, ошибки также не будет.
<code>exec("php-cli $file_path > /dev/null 2>/dev/null &"); exec("php $file_path > /dev/null 2>/dev/null &"); </code>
Если вы не знаете лучшего решения, пожалуйста, дайте мне знать. Спасибо за вашу помощь.