Задать вопрос
@lasthero67

Почему file_put_contents() не создает файл?

В WordPress создал 2 функции get_token() и get_result(). Обе делают по сути одно и то же: обращаются к стороннему API, получают данные и записывают данные в файл .json.
С первой функцией get_token() все хорошо, она и получает данные, и записывает файл, а вторая функция получает данные, но файл не записывает.

Отрывок кода функции get_token()
$data = json_decode($response, true);
file_put_contents('token.json', json_encode($data));
return $data['access_token'];


Отрывок кода функции get_result()
$result = json_decode($response, true);
file_put_contents('result.json', json_encode($result));
return $result;

Если прописать echo get_result(), то данные отображаются, но файл не создается. С чем это может быть связано?
  • Вопрос задан
  • 1088 просмотров
Подписаться 1 Простой 3 комментария
Пригласить эксперта
Ответы на вопрос 2
FanatPHP
@FanatPHP
Чебуратор тега РНР
61cd1515315b8585107266.jpg

Если функция записи в файл вызывается, но файл не создается, то РНР напишет в сообщении об ошибке "с чем это связано".
Спрашивать об этом посторонних людей бесполезно.

На домашнем компике ошибки обычно выводятся на экран, на боевом сервере - пишутся в лог. Если не знаете, где находится лог с ошибками, надо посмотреть в панельке управления своим сервером.
Ответ написан
Комментировать
Adamos
@Adamos
Это, возможно, связано с тем, что вы не соблюдаете важное правило:
НИКОГДА не использовать в подобных функциях относительные пути.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы