Javascript 用PHP解析JSON_解码数组
我将数据传递给一个已经“json_字符串化”的ajax调用。我能够将数据传递给PHP,但是当尝试访问传递的数组中的项目时,我收到以下错误: '正在尝试获取非对象的属性' 我试过好几种方法,但都卡住了。有人能帮忙吗?我的代码如下: js: } log(localStorage.getArray(“myFavs”)返回: {位置:1},{位置:0},{位置:4293315} php:Javascript 用PHP解析JSON_解码数组,javascript,php,json,ajax,Javascript,Php,Json,Ajax,我将数据传递给一个已经“json_字符串化”的ajax调用。我能够将数据传递给PHP,但是当尝试访问传递的数组中的项目时,我收到以下错误: '正在尝试获取非对象的属性' 我试过好几种方法,但都卡住了。有人能帮忙吗?我的代码如下: js: } log(localStorage.getArray(“myFavs”)返回: {位置:1},{位置:0},{位置:4293315} php: 注意:试图在第10行的C:\xampp\htdocs\VibeSetter\services\getlocatio
注意:试图在第10行的C:\xampp\htdocs\VibeSetter\services\getlocationsFavs.php中获取非对象的属性
注意:试图在第10行的C:\xampp\htdocs\VibeSetter\services\getlocationsFavs.php中获取非对象的属性
注意:试图在第10行的C:\xampp\htdocs\VibeSetter\services\getlocationsFavs.php中获取非对象的属性
有人能告诉我如何访问这个数组的每个元素吗?其思想是解析每个“位置”值,并在代码中将查询中的位置进一步连接为查询搜索中的特定值
提前感谢考虑到
$\u POST['favs']
的值为'[{“位置”:“1”},{“位置”:“0”},{“位置”:“4293315”}]代码>
那么
如果为TRUE,则返回的对象将转换为关联数组
考虑到$\u POST['favs']
的值为'[{“位置”:“1”},{“位置”:“0”},{“位置”:“4293315”}]代码>
那么
如果为TRUE,则返回的对象将转换为关联数组
您可以发布完整的数组吗?如果是[{locations:1}'、“{locations:0}'、“{locations:4293315}”]var_dump($\u post['favs']),请检查$post['favs];返回字符串(58)“{locations:1}”、“{locations:0}”、“{locations:4293315}]”是否可以发布完整的数组?如果是[{locations:1}”、“{locations:0}”、“{locations:4293315}”]var_dump($\u post['favs']),请检查$_post['favs'];返回字符串(58)“[“{locations:1}”、“{locations:0}”、“{locations:4293315}]”我以前也这么想过,也试过。不幸的是,所做的只是返回此错误:
警告:第8行的C:\xampp\htdocs\VibeSetter\services\getlocationsFavs.php中的非法字符串偏移量“locations”{我以前也这么想并尝试过。不幸的是,只会返回以下错误:
警告:第8行的C:\xampp\htdocs\VibeSetter\services\getlocationsFavs.php中的非法字符串偏移量'locations'{
$.ajax({
url: 'http://localhost/VibeSetter/services/getlocationsFavs.php',
dataType: 'json',
type: "POST",
data: {favs: JSON.stringify(localStorage.getArray("myFavs"))},
success: function(data, status)
{
$.each(data, function(i,item)
{
//pass to function to fill array
populateLocationsArray(i+1, item.idlocations,item.name,item.longitude, item.latitude);
});
},
error: function(jqXHR, textStatus, errorThrown)
{
console.log(arguments);
// alert('HTTP Error: '+errorThrown+' | Error Message:'+textStatus);
}
});
<?php
header('Content-type: application/json');
include 'config.php';
$data = json_decode($_POST['favs']);
var_dump($data);
foreach($data as $d)
{
print $d->locations;
}
?>
array(3) {
[0]=>
string(14) "{locations: 1}"
[1]=>
string(14) "{locations: 0}"
[2]=>
string(20) "{locations: 4293315}"
}
$array = json_decode($_POST['favs'],TRUE);
foreach($array as $d)
{
print $d['locations'];
}