许多阵列需要许多.post()和PHP脚本,还是可以一次完成?

时间:2014-10-31 19:48:12

标签: php jquery ajax

我正在使用.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);

2 个答案:

答案 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中,您将为每个索引选择每个。