Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过AJAX向PHP发送数组_Javascript_Php_Jquery - Fatal编程技术网

Javascript 通过AJAX向PHP发送数组

Javascript 通过AJAX向PHP发送数组,javascript,php,jquery,Javascript,Php,Jquery,我声明我的数组: p.myArray = []; 我将以下内容添加到循环中的数组: self.myArray.push($(this).data('id')); // [1,2,3,4] 然后,我通过AJAX通过POST将其发送到PHP: $.ajax({ url: '/gateway', data: {data: self.myArray}, dataType: 'json', type: 'POST', }) 我想知道,我是否需要一个密钥/值对?我可

我声明我的数组:

p.myArray = [];
我将以下内容添加到循环中的数组:

 self.myArray.push($(this).data('id')); // [1,2,3,4]
然后,我通过AJAX通过POST将其发送到PHP:

$.ajax({
    url: '/gateway',
    data: {data: self.myArray}, 
    dataType: 'json',
    type: 'POST',
})

我想知道,我是否需要一个密钥/值对?我可以通过阵列发送吗?它需要序列化吗?

将对象传递给
数据将导致jQuery为您序列化它

该阵列将在
$\u POST['data'][]中提供。


如果你在不同的事情上不使用相同的名字,那就更清楚了

data: { theArray: self.myArray }, 
转到:

$_POST['theArray'][]

请注意,如果您使用的是
dataType:'json'
,您的PHP脚本将必须返回json序列化数据,否则jQuery将忽略响应

i、 e:


您确实需要一个键/值对,但您正在发送一个。键是
数据
,值是数组。您的代码应该可以工作-您对它有问题吗?没有问题,我只是想知道是否必须有一个键/值对,以及是否需要序列化数组?jQuery将为您序列化数组,因此您无需担心。如果您使用静态输入,请使用
$('#formid').serialize(),如果使用动态变量,则必须设置数组中的每个键
$myArray = $_POST['myArray'];
echo json_encode($myArray);