无法访问关联数组php的索引

时间:2018-12-18 15:54:23

标签: php json

由于大小,我将发布的数据作为JSON数据块发送到服务器。到达后,我使用json_decode对其进行解码,然后开始我的业务。我遇到的问题是我无法访问索引中的值。当我print_r数组时,它显示了所有内容,但是尝试在索引处回显值则什么也没有显示。为什么回声不起作用?这是我正在尝试的:

$content = json_decode($_POST['result']);

print_r($content); //works

echo $content["rowCount"]; //doesn't work

print_r($content);的输出内容如下:

  

stdClass对象([prodName] => [company] => [runTime] => [adLine]   => [年份] => [代理商] => [vimeo] => [笔记] => [displayOrder] => [infoId] => [prodName1] =>测试[company1] =>测试[runTime1] => 0   [adLine1] => [vintage1] => 0 [agency1] => [vimeo1] =>   https://vimeo.com/ [notes1] => [displayOrder1] =>   0 [infoId1] => 339 [rowCount] => 1)

3 个答案:

答案 0 :(得分:2)

默认情况下,json_decode会将其转换为stdClass对象。如果需要关联数组,请传递true作为第二个参数。

http://php.net/manual/en/function.json-decode.php

<?php

$content = json_decode($_POST['result'], true);
...

答案 1 :(得分:1)

您应该尝试将true作为第二个参数传递给json_decode()函数:

$content = json_decode($_POST['result'], true);

或者...将数据作为对象访问:

echo $content->rowCount;

答案 2 :(得分:1)

print_r输出是不言自明的。您会看到print_r输出说它是一个stdClass对象。因此,您需要使用$ content-> key_name访问它们。 我不确定您是否具有用于json_encode的正确格式的数组。