我有一个json返回,如下所示:
[output] => stdClass Object
(
[data] => stdClass Object
(
[Email] => Array
(
[0] => test1@AOL.COM
[1] => test2@AOL.COM
)
[PhoneNumber] => Array
(
[0] => 2031234569
)
)
我需要做的是能够循环浏览电话和电子邮件,并将它们全部获取。
我试过:
foreach ($json_result->output->data as $data) {
$phone = $data->PhoneNumber;
$email = $data->Email;
}
但这是空的。有人有主意吗?
当PhoneNumber
和Email
是数组时,您正试图将它们作为属性访问。
foreach ($json_result->output->data->Email as $email_address) {
echo $email_address;
}
foreach ($json_result->output->data->PhoneNumber as $phone_number) {
echo $phone_number;
}
最简单的方法是对std对象进行JSON编码,然后将其解码回数组:
$array = json_decode(json_encode($object), true);
foreach($array as $data) {
$phone = $data->PhoneNumber;
$email = $data->Email;
}