在php中删除数组中的双引号?

时间:2014-09-10 06:00:46

标签: php arrays json

php代码:

 foreach($location_total_n_4 as $u=> $v)
{ 

 $final_location_total_4 .= "[".$u.",".$v."],";
}  

我在json中发送这些值。

echo json_encode(array(         
"location"=>"$final_location_total_4"
));

结果是:

  {"location":"[1407110400000,6641],[1407196800000,1566],[1407283200000,3614],[1407369600000,3654],[1407456000000,2918],[1407715200000,3900],[1407715200000,3900],"}

其实我想要这个值如下:

 {"location":[1407110400000,6641],[1407196800000,1566],[1407283200000,3614],[1407369600000,3654],[1407456000000,2918],[1407715200000,3900],[1407715200000,3900]}

2 个答案:

答案 0 :(得分:2)

   foreach($location_total_n_4 as $u=> $v)
    { 

     $final_location_total_4 .= "[".$u.",".$v."],";
    }
    $final_value =  json_encode(array(         
    "location"=> rtrim($final_location_total_4,',')
    ));

    echo str_replace(']"',']',str_replace('"[',"[",$final_value));

这将为您提供所需的结果

答案 1 :(得分:0)

您没有返回数组也没有返回对象。您正在返回一个字符串,因此必须用引号

包围
$final_location_total_4 .= "[".$u.",".$v."],";

您正在有效地创建字符串"[4,5],[1,2]"。 如果你想要一个对象或数组,请执行以下操作:

$final_location_total_4 = array();
foreach($location_total_n_4 as $u=> $v)
{ 
   $final_location_total_4[] = $u.",".$v;
} 

{"location":[1407110400000,6641],[140完全无效。你不能在其他任何地方用逗号分隔方括号,但在字符串内。你应该得到如下结果:{"location":{[1407110400000,6641],[140...}