Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.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 使用jQuery将多维数组发布到PHP_Javascript_Jquery_Web Services - Fatal编程技术网

Javascript 使用jQuery将多维数组发布到PHP

Javascript 使用jQuery将多维数组发布到PHP,javascript,jquery,web-services,Javascript,Jquery,Web Services,我正在尝试向我的PHP Web服务发送多维数组。 正如您在控制台日志中所看到的,正常变量test2是send successful,但我的数组没有传输到我的服务器。我做错了什么 JavaScript: function filter() { var filters = []; filters["f1"] = $("#filter-select").val() || []; console.log("Filters Array:") console.log(fil

我正在尝试向我的PHP Web服务发送多维数组。 正如您在控制台日志中所看到的,正常变量test2是send successful,但我的数组没有传输到我的服务器。我做错了什么

JavaScript:

function filter() {
    var filters = [];
    filters["f1"] = $("#filter-select").val() || [];

    console.log("Filters Array:")
    console.log(filters);

    $.post("/service/test",{test : filters, test2 : "test"},function(data){
        console.log("Webservice Response:");
        console.log(data);
    })
}

PHP:

控制台:

Filters Array:
[f1: Array[1]]
Webservice Response: 
array(1) {
  ["test2"]=>
  string(4) "test"
}

首先,正如cocco在评论中提到的,我需要使用JSON.stringify,但它将返回一个空数组


我使用了var过滤器={};用于生成对象。

您不能通过post发送数组。。。您需要先将其转换为字符串。。。我将在javascript JSON.stringify(过滤器)中使用。。然后在php json_中解码($_POST['test'])
Filters Array:
[f1: Array[1]]
Webservice Response: 
array(1) {
  ["test2"]=>
  string(4) "test"
}