Javascript php解码json数组
我有一个从javascript页面接收json对象的php页面,但我无法在php中解码json。如何解码json并在php中存储$arr[0]=[1,2,34,5,2]$arr[1]=[2,1,34,5,2]$arr[2]=[8,1,34,5,2];在php中Javascript php解码json数组,javascript,php,arrays,json,Javascript,Php,Arrays,Json,我有一个从javascript页面接收json对象的php页面,但我无法在php中解码json。如何解码json并在php中存储$arr[0]=[1,2,34,5,2]$arr[1]=[2,1,34,5,2]$arr[2]=[8,1,34,5,2];在php中 after removing "myString = JSON.stringify(myObject);" echo $value; outputs "Array" echo $value[0]; outputs nothing echo
after removing "myString = JSON.stringify(myObject);"
echo $value; outputs "Array"
echo $value[0]; outputs nothing
echo $value->{"key"}; outputs nothing either
how can i actually get the array contents?
javascript:
var mon=[1,2,34,5,2];
var tue=[2,1,34,5,2];
var wed=[8,1,34,5,2];
var myObject = {'key' :'value','key2':'value','key3':'value'};
myObject.key = mon;
myObject.key2 = tue;
myObject.key3 = wed;
myString = JSON.stringify(myObject); //this line removed
var jsonString = JSON.stringify(myObject);
$.ajax({
type: "POST",
url: "n3.php",
data: {data : jsonString},
cache: false,
success: function(aaa){
alert("OK");
$("#pageContent").html(aaa);
}
});
php:
您正在Javascript端对数据进行两次JSON编码。当您在PHP中调用一次
json\u encode
时,您会得到一个json编码的对象。这就是echo$value
输出整个字符串的原因。如果此时它是一个PHP数组,它将输出“array”,或者如果它是一个对象,它将不会输出整个内容
json\u再次解码它,或者不要用Javascript对它进行双重编码。你能发布什么是echo$value代码>给出?现在回显$value;给出“数组”,如何获取数组内容?请尝试var\u dump($value)
。我不想只输出数组,我想将其存储到php变量中,以便$arr[0]=[1,2,34,5,2]$arr[1]=[2,1,34,5,2]$arr[2]=[8,1,34,5,2];不管怎样,我能做到吗?*咳嗽*咳嗽*试试var\u dump($value)
看看你有什么和你想用什么*咳嗽*
<?php
$value = json_decode($_POST['data']);
echo $value; //this echos the whole json object
echo $value->{"key"}; //this outputs nothing
?>