Отображение и ссылка на json_encode в Laravel

Я не уверен, что лучший способ показать это. Я создаю журнал активности для моего сайта, который можно адаптировать к различным контроллерам. Вот мой код кодирования:

$properties = [
'last_name' => $request->last_name,
'first_name' => $request->first_name,
'dob' => $request->dob,
'unique_id' => $unique_id,
'doctor_id' => $doctor->id
];
$log->properties = json_encode($properties);

Однако свойства на другом контроллере могут иметь такие поля, как revenue, addressи т. д. и т. д.

На странице показа моего контроллера журнала активности я сейчас использую {{$log->properties}} для отображения объекта. Возвращает что-то вроде этого:

{"last_name":"Test4","first_name":"Test4","dob":"1984-09-13","unique_id":"Test4Test41984-09-13","doctor_id":19}

В конечном итоге я хотел бы, чтобы он отображал каждый элемент объекта в виде <strong> тег, а затем отобразить относительную информацию. Итак, в простом html вышеупомянутые свойства будут выглядеть так:

<strong>last_name:</strong> Test4<br>
<strong>first_name:</strong> Test4<br>
<strong>dob:</strong> 1984-09-13<br>
<strong>unique_id:</strong>Test4Test41984-09-13<br>
<strong>doctor_id:</strong> 19

Поскольку ключи различаются в каждом свойстве в зависимости от того, с какого контроллера он был извлечен, я не уверен, как это отобразить. У меня даже возникают проблемы с поиском ссылок внутри объекта. Например, {{$key->properties->last_name}} не ссылается на фамилию. Ни один не делает {{$key->properties()->last_name}},

0

Решение

Когда вы используете json_encode для хранения объекта внутри $ Логарифмически> свойства вы конвертируете объект в строку json, потому что вы не можете использовать $ Кнопочная> свойства-> last_name, для этого вы можете использовать json_decode в вашем $ Клавишные и> Свойства переменная, то вы можете получить доступ к каждому свойству.

Чтобы отобразить данные независимо от имен переменных, вы можете сделать что-то вроде этого:

$properties = json_decode($key->properties, true);

foreach ($properties as $key => $value) {
echo '<strong>'.$key.':</strong> '.$value.'<br>';
}

Или вы можете использовать blade для отображения этого, суть в том, что вам нужно преобразовать ваш json в массив, а затем перебрать его ключи и значения.

1

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

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector