Я пытаюсь создать базовую функцию PHP для многократного вызова файлов json по всему приложению.Каждый раз, когда я хочу вызвать файл json, я использую:
<? $site = json_decode(file_get_contents('views/partials/site.json')); ?>
Затем я использую echo для использования данных из файла json следующим образом:
<? echo $site[0]->title; ?>
Но вместо повторения первой части яЯ хочу написать функцию в заголовке и вызвать ее там, где я хочу вызвать файл JSON.После этого я планировал использовать такую функцию:
$site = jsonCall('site');
, используя приведенную ниже функцию;
function jsonCall($jsonurl){
// this is one line code. no difference from 3 lines below-> $jsonCalled = json_decode(file_get_contents($homepage . 'views/partials/' . $jsonurl . '.json'));
$url = $homepage . 'views/partials/' . $jsonurl . '.json';
$data = file_get_contents($url); // put the contents of the file into a variable
$jsonCalled = json_decode($data); // decode the JSON feed
echo $jsonCalled;
};
, но вместо того, что я хочу, я получил массив в ответ отсервер.Я думаю, что моя функция превращает файл JSON в массив, и поэтому я не могу вызвать его правильно.
Кто-нибудь знает, как решить эту простую проблему?покажи мне правильный способ написания этой функции, чтобы мой код мог выглядеть немного легче для чтения.Спасибо.
, изменив echo в функции с return и используя jsonCall('site')[0]->title;
все работало нормально.