PHP file_get_contents не удалось открыть поток: операция не разрешена - PullRequest
0 голосов
/ 13 октября 2019

Я сравниваю данные с веб-сайта один раз в месяц. На этот раз я получаю сообщение об ошибке: file_get_contents failed to open stream: Operation not permitted

Ошибка генерируется для файлов, которые были очищены в прошлом месяце, а не для текущей очистки. Итак, в приведенном ниже коде $currfile работает, но не $basefile. Конкретный код:

     $basepath = $destination_directory . "/" . 'website' . "/" . $basedir . "/" . $brand . ".txt";
     $currpath = $destination_directory . "/" . 'website' . "/" . $currdir . "/" . $brand . ".txt";
     $basefile = utf8_encode(file_get_contents($basepath));
     $currfile = utf8_encode(file_get_contents($currpath));
     $response["website"] = [
        "basefile" => $basefile,
        "currfile" => $currfile
     ];
     ... // passes info to client to be compared with javascript

Я проверил, что разрешения для файла в порядке, и оба имеют одинаковые разрешения. У меня Mac, я выбрал файл, а затем получил информацию.

Я также проверил, что PHP ini в порядке: allow_url_fopen: On

У меня была такая же проблема с scandir, поэтому я также проверил PHP open_basedir: no value.

Единственное, что я могу вспомнить по сравнению с прошлым месяцем, это то, что я установил Mac OS Catalina и у меня возникли некоторые проблемы. Может быть, это просто еще один.

Кстати, это PHP 7.2.1.

Есть еще идеи?

...