Последние несколько дней я работал над локальным приложением и заметил, что одна из моих функций exec () для вызова внешней программы не сработала корректно.После дальнейшего изучения было очевидно, что программа действительно выполнялась, но преждевременно завершала работу, поскольку важная строка, использующая file_get_contents (), не извлекала содержимое указанного файла.
Файл представляет собой обычный текстовый файл без расширения.Я предполагаю, что file_get_contents () обрабатывает файл как каталог, так как нет расширения?Это странно, потому что, если я вручную запускаю ту же программу из веб-браузера, все работает отлично.
Вот пример строки для ясности -
while(file_get_contents('plaintextfile') == "something"){
/// Do This
}
Вышеприведенное прекрасно работает, когда я захожу /program.php из веб-браузера, но при его вызове он выдает ошибку «файл / папка не найдена» для «plaintextfile».
exec('php /program.php', $output);
foreach($output as $output){
print $output . "<br>";
}
Заранее спасибо всем, кто может пролить свет на этоситуация.Я действительно озадачен этим ...