PHP中的json_encode输出没有为数据提供标签,因此可以访问它

时间:2013-04-29 20:12:07

标签: php javascript jquery mysql json

我目前正在尝试从我的数据库中提取现有数据,以便在网页上实时使用, 我有一个名为json.php的PHP文件,它使用以下代码。

$sth = mysql_query("SELECT * FROM table ORDER BY id DESC");
$rows = array();
while($r = mysql_fetch_assoc($sth)) {
    $rows[] = $r;
}
print json_encode($rows);

然后输出。

[
    {
    "id": "1",
    "title": "1",
    "img": "1.jpg"
},
{
    "id": "2",
    "title": "2",
    "img": "2.png"
}
]

但是当我尝试在线学习时,我看到的每个例子似乎都有来自JSON的每个“对象”的标签,然后使用类似的东西来调用

    json.label.title

PHP函数怎么没有打印出标签,所以我可以访问jQuery中的数据?或者我在MySQL中的表格做错了什么?

正如我上面所说,我尝试过在线研究,以了解如何做到这一点,但在每个例子中我都会遇到这个问题。

1 个答案:

答案 0 :(得分:2)

您的JSON代表一个包含对象的数组。

for (var i = 0; i < json.length; i++)
    json[i].title; // your value

[...]是一个包含数字索引的数组(从0array.length - 1)和{...}一个带有字符串标签的对象。