【问题标题】:Send javascript multidimensional array via ajax post通过ajax post发送javascript多维数组
【发布时间】:2013-04-22 08:57:34
【问题描述】:

我有一个像下面这样的多维数组

var myarray = new Array();
myarray["firstkey"] = new Array();
myarray["firstkey"]["secondkey"] = new Array();
myarray["firstkey"]["secondkey"]["0"] = new Array();
myarray["firstkey"]["secondkey"]["0"]["a"] = 100;
myarray["firstkey"]["secondkey"]["0"]["b"] = 1200;
myarray["firstkey"]["secondkey"]["0"]["c"] = 32000;
myarray["firstkey"]["secondkey"]["0"]["d"] = 23001;
myarray["firstkey"]["secondkey"]["0"]["e"] = "text";
myarray["firstkey"]["secondkey"]["0"]["f"] = "text";
myarray["firstkey"]["secondkey"]["0"]["g"] = "text";
myarray["firstkey"]["secondkey"]["0"]["h"] = "";
myarray["firstkey"]["secondkey"]["0"]["i"] = 0;
myarray["firstkey"]["secondkey"]["0"]["aa"] = new Array();
myarray["firstkey"]["secondkey"]["0"]["bb"]["bbb"] = 16;
myarray["firstkey"]["secondkey"]["0"]["cc"]["ccc"] = "text";
myarray["firstkey"]["secondkey"]["0"]["dd"]["ddd"] = new Array();
myarray["firstkey"]["secondkey"]["0"]["ee"]["eee"]["0"] = "text";
myarray["firstkey"]["secondkey"]["0"]["ff"]["fff"]["1"] = "text";`

我想从 PHP 中获取它,但我找不到解决方案。谁能告诉我解决方案。我们将不胜感激。

【问题讨论】:

  • 我想从php中获取”是什么意思?

标签: javascript php arrays ajax send


【解决方案1】:

也许您可以尝试发送 JSON?

你应该从 PHP 中读取它:

$json = file_get_contents("php://input");

【讨论】:

  • 当我通过 ajax 发送它时,它会显示 [] 并且在 php $_POST 中显示 Array()
  • 是的。当您仅将带有 POST 的 JSON 发送到 PHP 时,$_POST 为空。然后您会收到带有$json = file_get_contents("php://input"); 的请求正文。然后你可以用json_decode()解码它。
【解决方案2】:

你可以做 AJAX

JavaScript:

var array = JSON.stringify(myarray);
$.ajax({
    url: "/myphp/file.php",
    data: {array: array},
    dataType: "json",
    success: function(data){
        alert(data["return"]);
    }
});

PHP:

$array = json_decode($_POST["array"]);
$savedVal = $array["firstkey"]["secondkey"]["0"]["a"];
echo json_encode(array("return" => $savedVal));

【讨论】:

  • 首先感谢您的回答,但是当我以您的方式发送它时,帖子中的数组显示我是空白的,并且在应该发布数据之前,我无法访问 php,如果是多维数组,哪些键就像字符串一样,它总是给我空白。
  • 你明白我的问题了吗?
  • JSON stringify 例程可能会忽略字符串键属性并仅序列化数字索引的属性。您自己尝试过吗?
猜你喜欢
  • 2016-07-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-14
  • 2011-07-16
  • 1970-01-01
  • 2011-01-03
  • 2021-06-01
相关资源
最近更新 更多