【问题标题】:Json encode showing result as string [closed]Json编码将结果显示为字符串[关闭]
【发布时间】:2014-07-25 10:15:52
【问题描述】:

我已经阅读了以前的 stackoverflow 建议并尝试了很多方法,但仍然 json 编码将结果显示为字符串而不是普通输出。 Json一直正常输出到字符串,我想通过删除字符串标签来显示没有字符串的结果。

代码:

$vehiclResult = array(
'Fuel Type' => $VehicleFuel->Fuel_Type . "<br>",
     'Fuel Type Code' => $VehicleFuel->Fuel_Type_Code . "<br>",
     'Fuel Type Code' => $VehicleFuel->Fuel_Type_Code . "<br>",
     'ECE_Unit' => $VehicleFuel->ECE_Unit . "<br>",
     'ECE_In'=> $VehicleFuel->ECE_In . "<br>",
     'ECE_Out' => $VehicleFuel->ECE_Out . "<br>",
     'ECE_All' => $VehicleFuel->ECE_All . "<br>",
     'ECE_CO2' => $VehicleFuel->ECE_CO2 . "<br>"  
     ); 

     $result = array(       
        'vehicle' => $vehiclResult
     );   
     echo json_encode($result);
   die(); 
}   

输出:

{"vehicle":{"Emission Class":"EU5
","Emission Badge":"4
","Car Tax":"146
","Tax Type":"D
","0":"Vehicle Fuel:
","Fuel Type":"Super
","Fuel Type Code":"1
","ECE_Unit":"l\/100km
","ECE_In":"9.2
","ECE_Out":"5.7
","ECE_All":"7
","ECE_CO2":"163
"}} 

【问题讨论】:

  • json is string 你期待什么?中断标签是怎么回事?
  • 什么是plain output?根据 RTFM,您知道 json_encode() 返回字符串,所以一切都很好。
  • 换行符由字符串中的&lt;br&gt; 标记产生。如果您查看此输出的原始源代码,您会发现它是完美的 JSON。
  • 这里唯一的问题是你的 JSON 被解析为 HTML(你应该有 header("Content-Type: application/json");,但我不知道你想问什么。
  • 我不想要带有“”的结果

标签: php json


【解决方案1】:

如果您希望在 html 页面中使用这些值

使用javascripthttp://api.jquery.com/jquery.parsejson/
从字符串中解析值。

var response = $.parseJSON(data);
console.log(response);  

【讨论】:

  • 那么这与问题有什么关系呢?问题的标签与 php 相关,而不是 JavaScript。此外,这对数据编码没有任何改变,只是为了以后解码。
猜你喜欢
  • 2012-01-18
  • 2012-07-15
  • 1970-01-01
  • 2018-05-11
  • 2015-09-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-19
相关资源
最近更新 更多