PHP system () - статус возврата всегда 0 - PullRequest
11 голосов
/ 09 ноября 2010

Мне нужно запустить следующие скрипты.

// File: script_a.php
<?php exit(1); ?>

// File: script_b.php
<?php 
     system('php script_a.php', $return);
     var_dump($return);
?>

Теперь моя проблема: в моей операционной системе Windows script_b.php показывает int(1), как и ожидалось. На нашем Unix-сервере я всегда получаю int(0), поэтому я не могу проверить, происходит ли определенный сбой внутри script_a.php.

Кто-нибудь знает эту проблему и как ее решить?

Ответы [ 11 ]

0 голосов
/ 09 ноября 2010

Вы проверили, включен ли safe_mode на Unix-сервере?

PHP Примечание:

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

Или, может быть, системная функция запрещена для выполнения?

...