Javascript 存在通过json数组在angularjs中显示数据的问题

Javascript 存在通过json数组在angularjs中显示数据的问题,javascript,php,angularjs,arrays,json,Javascript,Php,Angularjs,Arrays,Json,我试图通过json数据数组在angularjs中显示数据,但当我从php文件返回json数据时,我无法解决这个问题,因为它给了我结果 ["{name:'abc', age:19}","{name:'xyz', age:21}"] 但它不起作用,因为在Angular中,我需要这样格式的数据 [{name:'abc', age:19},{name:'xyz', age:21}] 现在的问题是,我不知道如何重新排列这个数组格式,我尝试了JSON.parse(),但它不起作用 这是我的php代码 i

我试图通过json数据数组在angularjs中显示数据,但当我从php文件返回json数据时,我无法解决这个问题,因为它给了我结果

["{name:'abc', age:19}","{name:'xyz', age:21}"]
但它不起作用,因为在Angular中,我需要这样格式的数据

[{name:'abc', age:19},{name:'xyz', age:21}]
现在的问题是,我不知道如何重新排列这个数组格式,我尝试了
JSON.parse()
,但它不起作用

这是我的php代码

if($xml->product) {

foreach ($xml->product as $node ){

    $productName = $node->name;
    $productID = $node->productID;
    $productPrice = $node->price;
    $productURL = $node->imageURL;
    $productCat = $node->categories->category;

    //$product = "{name: '".$productName."', productid: '".$productID."' }";
      $product = array("name"=> "".$productName."", "productid"=> "".$productID."");

    array_push($data1, $product);

}} else {
echo "error!"; } print json_encode($data1);

问题解决了,实际上我在数组中传递字符串,然后用json编码,这给了我这个双引号问题。现在我修复的是数组中的更改字符串并通过json传递,它会自动将这些数组转换为object:)

通过将字符串更改为数组来修复

 $product = "{name: '".$productName."', productid: '".$productID."' }";
换成这个

$product = array("name"=> "".$productName."", "productid"=> "".$productID."");

这是发布php代码时json格式的问题,因此基本上您得到的是一个对象数组。。只需解析对象。你愿意以角度操作数据吗?因为如果你是,那么你所需要做的就是对列表中的每个字符串使用JSON.parse(),如果你能看到第一个数组是有效的JSON格式,第二个数组不是有效的JSON格式,那么如果你想显示数据,JSON.parse()将帮助你。。!!是的,我使用JSON.parse(),但它在angularjs中不起作用