2015-09-10 68 views
0

任何人都可以幫助我閱讀這種類型的json響應。如何讀取這種類型的json響應,包含 u0010a u003a_translate

{"\u0000*\u0000_translate": 
{ 
    "app_text_newcomer":"Newcomer", 
    "app_text_senior":"Senior", 
    "app_text_mostsenior":"Most Senior", 
    "app_text_results":"Result", 
    "app_text_result":"Result", 
    "app_text_agenda":"Agenda", 
    "app_text_dbvg":"Dbvg" 
}, 
"0":{} 
} 

我怎樣才能得到這個值\ u0000的* \ u0000_translate

+0

如果你只是想看看它是什麼角色,你可以在這裏填寫Flash並點擊「JSON來XML「:http://codebeautify.org/jsonviewer –

回答

2

看起來像JSON,所以使用json_decode得到一個PHP對象或關聯數組。

編輯:剛剛嘗試過,我看到你的問題。 json_decode()不能處理數據中的空值,所以你應該提交一個關於這個的bug。

解決方法:預處理\ u0000的一些標記值以後可以更換一個真正的空,such as this

$json = '{"\u0000*\u0000_translate": { "app_text_newcomer":"Newcomer", "app_text_senior":"Senior", "app_text_mostsenior":"Most Senior", "app_text_results":"Result", "app_text_result":"Result", "app_text_agenda":"Agenda", "app_text_dbvg":"Dbvg"}, "0":{}}'; 

$json = str_replace('\u0000', 'XNULLX', $json); 

$arr = json_decode($json, true); 
foreach ($arr as $k => $v) { 
    if (strpos($k, 'XNULLX') !== false) { 
     unset($arr[$k]); 
     $k = str_replace('XNULLX', "\0", $k); 
     $arr[$k] = $v; 
    } 
} 

echo var_export($arr, true); 
相關問題