我正在使用.post()请求将PHP数组转换为Javascript。示例如下:
$.post("example.php",{"data":user},function( result ){ alert(result);},'json');
这只适用于一个数组;如果PHP部分仅以下面结尾:例如:
echo json_encode($onlyOneArray);
本练习的目的是从我的数据库中获取8个数据数组,以绘制图形。我可以使用.post()获取8个独立的数组并区分它们吗?或者我需要有8个单独的.post()命令和8个单独的PHP脚本吗?
我的PHP脚本目前以类似下面的内容结束。不知道如何解决这个问题:
echo json_encode($arrayOne);
echo json_encode($arrayTwo);
echo json_encode($arrayThree);
echo json_encode($arrayFour);
echo json_encode($arrayFive);
echo json_encode($arraySix);
echo json_encode($arraySeven);
echo json_encode($arrayEight);
答案 0 :(得分:2)
而不是这个
echo json_encode($arrayOne);
echo json_encode($arrayTwo);
echo json_encode($arrayThree);
echo json_encode($arrayFour);
echo json_encode($arrayFive);
echo json_encode($arraySix);
echo json_encode($arraySeven);
echo json_encode($arrayEight);
创建一个包含所有数组的单个数组
$res = array(
$arrayOne,
$arrayTwo,
$arrayThree,
$arrayFour,
$arrayFive,
$arraySix,
$arraySeven,
$arrayEight
);
echo json_encode($res);
exit;
或者,如果您想知道哪个数组包含哪些数据,请为每个内部数组命名,
$res = array(
'one' => $arrayOne,
'two' => $arrayTwo,
'three' => $arrayThree,
'four' => $arrayFour,
'five' => $arrayFive,
'six' => $arraySix,
'seven' => $arraySeven,
'eight' => $arrayEight
);
echo json_encode($res);
exit;
当然,使用比'one','two'等更有意义的名称。
答案 1 :(得分:0)
用户 array_push()函数,将所需的所有数组推送到一个。 然后在Javascript中,您将为每个索引选择每个。