1
我想刪除特殊字符(並發現這個在論壇):json_decode() - 語法錯誤
$response = trim(preg_replace("#(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/)|([\s\t]//.*)|(^//.*)#", '', $response));
同樣對於這個
for ($i = 0; $i <= 31; ++$i) {
$response = str_replace(chr($i), "", $response);
}
$response = str_replace(chr(127), "", $response);
if (0 === strpos(bin2hex($response), 'efbbbf')) {
$response = substr($response, 3);
}
而這個編碼
$response = mb_convert_encoding($response, "UTF-8");
echo "\nJSON Response:#$response#\n";
此時$response
回聲:
{"data":{"taxa":[{"placa":"EDY8986","taxas_detran":"141.36","seguro_dpvat":"211.30","ipva":"1945.20","multas":"5048.10","total_debitos":"null"}]},"code":200,"pagination":{"rows":1,"page":1,"pages":0,"hasNext":false,"totalRows":1}}
最終
$data = json_decode('"' . $response . '"',true, 512);
echo "\n\nData>\n";
print_r($data);
echo "\nError> "; echo json_last_error_msg();
json_last_error_msg()
打印:
Syntax Error
我已經在JSONLint和JSON格式程序驗證它,它是有效的。
'$數據= json_decode($響應,真實,512);' –
我不能相信它。也許我瘋了。謝謝你,它的工作! –