我的问题:如何解析json数组?
我这样发送:
$data= mysql_fetch_array($r);
header('Content-type: application/json');
?>
{
"check": "<?php echo $check?>",
"productcode": "<?php echo $code?>",
"values": [<?php echo $data?>]
}
<?php
在ajax方面,我对单个值进行此操作
success: function(data,textStatus){
//return values
identification=data.check;
如果我想访问数组,我会做这样的事情并且我得到未定义的
value=data.values[1];
我做错了什么?
答案 0 :(得分:1)
您还需要将数组编码为JSON:
{
"check": "<?php echo $check?>",
"productcode": "<?php echo $code?>",
"values": [<?php echo json_encode($data); ?>]
}
最简单的方法可能是将所有内容放在PHP数组中并将其序列化为JSON:
$output = array(
"check" => $check,
"productcode" => $code,
"values" => $data
);
echo json_encode($output);
然后你可以确定它被正确编码。
答案 1 :(得分:1)
试试这个:
$data= mysql_fetch_array($r);
header('Content-type: application/json');
$json = array(
'check' => $check,
'productcode' => $code,
'values' => $data
);
print json_encode($json);
比手动打印json更整洁。 json_encode将PHP数组转换为json字符串。
答案 2 :(得分:0)
$data= mysql_fetch_array($r, MYSQL_NUM);
可以解决问题。
获取你在ajax部分获得的json会很有帮助