PHP CLI - какую команду мне использовать? - PullRequest
2 голосов
/ 25 февраля 2011

У меня есть один сервер (тест), в котором есть команда "php", с которой я могу запустить CLI.Другой сервер (хостинг) работает только с помощью команды "php5-cli".

Пример:

exec("php file.php"); // Works on test server
exec("php5-cli file.php"); // Works on hosting server

Как мой сценарий может определить, какой использовать?

Ответы [ 5 ]

1 голос
/ 25 февраля 2011

Почему бы не создать символическую ссылку на исполняемый файл на одном из серверов ln -s, чтобы один из них был доступен на обоих серверах.

Это должно решить эту проблему.

1 голос
/ 25 февраля 2011

Убедитесь, что php.ini включен при использовании каждого из них.

1 голос
/ 25 февраля 2011

Создайте значение конфигурации, специфичное для каждого сервера.На некоторых серверах вы встретите php5 в качестве команды cli вместо php :) И системный администратор может легко переименовать исполняемый файл или связать его с любым именем, которое ему нравится.


edit: попробуйте что-нибудь вместестроки:

$output = Array();
$result = -1;
exec("php -f myScript.php", $output, $result);
if($result==-1){
    // you should try to exec use the other method here
    echo "app 'php' not found";
}else{
    // the exec was a success
}
1 голос
/ 25 февраля 2011
php-config --php-binary
php-config5 --php-binary

Но вы, вероятно, сталкиваетесь с подобными проблемами, не гарантирующими, как эта команда называется (или что она существует).Не уверен, сколько хостинговых компаний его используют.

1 голос
/ 25 февраля 2011

Не могли бы вы символическую ссылку php-cli как php или наоборот?

Таким образом, любой из них будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...