小编典典

如何从AJAX调用返回数组?

ajax

我正在寻找一种更好的解决方案,以使用jQuery进行AJAX调用,使PHP文件返回一个数组,并将其作为Javascript数组从客户端发布。这是我一直在做的事情:

PHP文件(Example.php):

<?php
    $id_numbers = array('NES-ZL','NES-AL','SNS-ZL');

    for ($i=0; $i<count($the_array); $i++){
        echo $id_numbers[$i];
        echo '|';
    }
?>

JS档案:

id_numbers = new Array();
$.ajax({
    url:"Example.php",
    type:"POST",
    success:function(msg){
        id_numbers = msg.split('|');
    }
});

我目前的方法对我的口味来说有点太复杂了。

我想做的就是能够

return $id_numbers;

在PHP方面,并在AJAX调用后将其直接转换为Javascript数组。

想法,有人吗?


阅读 345

收藏
2020-07-26

共1个答案

小编典典

使用JSON在客户端和服务器之间传输数据类型(数组和对象)。

在PHP中:

在JavaScript中:

PHP:

echo json_encode($id_numbers);

JavaScript:

id_numbers = JSON.parse(msg);

如Wolfgang所述,您可以为jQuery提供第四个参数,以自动为您解码JSON。

id_numbers = new Array();
$.ajax({
    url:"Example.php",
    type:"POST",
    success:function(msg){
        id_numbers = msg;
    },
    dataType:"json"
});
2020-07-26