Печать ответа JSON в PHP с использованием фреймворка Laravel

Я занимаюсь разработкой веб-приложения, которое собирает данные из базы данных и печатает. Я использую фреймворк Laravel. Я показал ниже использование кода. Я могу отобразить ответ JSON непосредственно в моем коде PHP, но если я попытаюсь выполнить итерацию по ответу JSON, я ничего не смогу получить.

Вот как я генерирую объект JSON, используя библиотеку Laravel Facades:

  $worklogs = Response::json($data, $this->getStatusCode(), $headers);

Вот код, который я использовал для передачи данных на страницу PHP:

  return view('index')->with('worklogs', $worklogs);

Я могу распечатать собранные данные со страницы PHP, используя следующий код:

  {{ $worklogs }}

Но если я попытаюсь перебрать его, используя foreach В цикле возникает ошибка, как показано:

ошибка зафиксирована

На странице PHP вот как я это кодировал, но он не работает:
захваченная часть файла index.blade.php

0

Решение

Прежде всего, как сказал Богдан Бочоака в своем ответе, вы используете только Response::json функция, когда вы хотите вернуть только Json (в основном для API, чтобы другие приложения могли получить доступ к вашим данным JSON). Например, приведенный ниже код вернет JSON, который может быть прочитан мобильным приложением.

$worklogs = WorkLog::all();
return Response::json([
'worklogs' => $worklogs
], $headers);

Насколько я понимаю ваш вопрос, вы хотите передать данные непосредственно в представление, поэтому ваш код в идеале должен быть следующим:

$worklogs = WorkLog::all();
return view('index',compact('worklogs'));

(Обратите внимание, что выше я решил использовать compact() вместо with->() потому что его чище)

Затем вы можете перебирать свой код так, как вам нужно:

@foreach($worklogs as $worklog)
<td>{{$worklog->id}}</td>
<td>{{$worklog->name}}</td>
<td>{{$worklog->company}}</td>
@endforeach
0

Другие решения

Я не уверен, что понимаю ..
во-первых, вот как вы возвращаете JSON:

return Response::json([
'hello' => $value
], $headers);

Второе: что вы имеете в виду, повторить jSon?
В-третьих: ваши сообщения об ошибках утверждают, что неопределенная переменная $ datas .. не $ data, $ datas. Вы посылаете параметр $ data в представление?

1

По вопросам рекламы [email protected]