Как зациклить (foreach) JSON декодируется в PHP (Laravel) - PullRequest
0 голосов
/ 25 января 2019

Это мой код `

$a =json_decode($user->name, true);

И мне нужно зациклить $a, но я получаю

" Неверный аргумент предоставлендля foreach "

при выполнении`

Ответы [ 3 ]

0 голосов
/ 25 января 2019

Исходя из того, что вы опубликовали в другом ответе и в комментарии ко мне, вам нужно изменить цикл на:

foreach($a[0] as $akey => $aloop) { array_push($array, $aloop->email)); }

Обратите внимание на изменение с $a на $a[0]

0 голосов
/ 25 января 2019

Вы должны описать нам, как выглядит ваша строка JSON.

Может быть, вы можете попробовать этот код ниже:

$user= '[{"name":"Jonathan Suh","email":"jonathan.suh@gmail.com"},
              {"name":"William Phil","email":"will.phil@gmail.com"},
              {"name":"Allison Kin","email":"allison.kin@gmail.com"}]';

// Replace with your own JSON
$a = json_decode($user, true); // Array

// Create empty array to hold query results
$array = [];

// Begin loop ( foreach )
foreach ($a as $akey => $aloop) {
    array_push($array, ['name' => $aloop["name"], 'email' => $aloop["email"]]);
}

// Encode your array result from Loop Process to JSON
// You can change whatever you want to do from your Result Loop
$jsonENC = json_encode($array);

// You know what is this...
echo $jsonENC;
0 голосов
/ 25 января 2019

Вы можете зациклить в массиве, и я думаю, что результат этого $a =json_decode($user->name, true);

это строка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...