У меня есть пользовательская модель со столбцом profile_details, в котором содержится json_encoded объект информации о профиле пользователя. Объект выглядит так, как показано ниже
$user->profile_details: {
'name' : 'Wayne',
'books' : [
{ id: 1, title : 'Rich Dad' , isbn: 9780},
{ id: 3, title : 'Business school' , isbn: 8891}
]
}
Как изменить значение свойства 'id' массива books после извлечения модели пользователя из базы данных.
Ниже я попробовал.
$user =User::find(1);
$newBooks = array();
if($user) {
$profile_details_decoded = json_decode($user->profile_details) ;
foreach($profile_details_decoded->books as $book) {
$book->id = 28;
array_push($newBooks, $book);
}
$user->profile_details->books = $newBooks;
}
dd($user->profile_details->books);
Я ожидал, что массив $newBooks
заменит массив $user->profile_details->books
.
Пожалуйста, кто-то должен помочь мне. Спасибо.