Я пытаюсь передать JSON на мой взгляд
С помощью этого кода:
Route::get('json', function() { $path = storage_path() . "/json/dish.json"; $json = json_decode(file_get_contents($path), true); return View::make('pages.json')->withJson($json); });
С {{dd($json)}}
Я получаю следующее:
array:1 [▼ "dish" => array:297 [▼ 0 => array:2 [▶] 1 => array:2 [▶] 2 => array:2 [▶] 3 => array:5 [▶] ...
Когда я пытаюсь отобразить содержимое моего $json
с помощью:
@foreach($json["dish"] as $key => $item) {{$item}} @endforeach
Я получаю это сообщение об ошибке:
htmlentities () ожидает, что параметр 1 является строкой, заданный массив (View: /Users/beyerdynamic/Documents/Developer/dev1/resources/views/pages/json.blade.php)
Что я здесь делаю неправильно?
По умолчанию Laravel пытается избежать любых переменных перед входом. Если вы хотите избежать этого, используйте {!! $item !!}
{!! $item !!}
. Тем не менее, $ item является массивом, и это не поможет вам показать правильные значения. Вы получите «Массив» в качестве вывода. Если вы хотите отобразить правильные данные, используйте {{ $item['your_key'] }}
.