我正在构建一个JSON数组,如下所示:
$footerSEOArray[$data['domainname']] = $data[$language];
echo json_encode($footerSEOArray);
一旦传回,我就像这样解码:
$footerLinks = json_decode($result);
我可以按如下方式打印数组:
print_r($footerLinks);
打印时看起来像这样:
stdClass Object
(
[www.data1.com] => Australia
[www.data2.com] => Hindu
[www.data3.com] => Laos
[www.data4.com] => Iranian
[www.data5.com] => America
)
现在我需要能够打印数组的第一部分和第二部分,但我似乎无法在print_r()之外进行打印;
THX
答案 0 :(得分:1)
您应该将第二个参数传递给json_decode函数。它的默认行为是将键值对转换为stdClass对象,但是使用此参数可以强制使用关联表。
所以:
$footerLinks = json_decode($result, true);
答案 1 :(得分:1)
你必须传递给json_decode一个额外的参数来获得一个数组而不是一个通用数组。
$footerLinks = json_decode($result, true);
参考:php手册json_decode页面
答案 2 :(得分:0)
尝试:
$footerLinks = (array) $footerLinks;
答案 3 :(得分:0)
正如所有人说的那样$ footerlinks是一个对象,如果你想像数组那样使用它,你就要像这样解码:
$footerLinks = json_decode($result,true);
现在,$ footLinks成为一个关联数组。