2015-09-08 80 views
1

我有一個相當大的數組我試圖轉換成json對象與php的json_encode函數。這個數組主要由URL組成,當我將print_r添加到文件時,該數組通常爲3-10mb。它通常在95%的時間內工作,但是有些特殊字符在那裏偷偷地導致JSON_encode失敗。所以我認爲下面的代碼會照顧到這一點,但我仍然得到JSON_ERROR_UTF8返回。json_encode使用utf8_encode後仍然失敗

array_walk_recursive($job_return_data, function(&$item, &$key){ 
    $item = utf8_encode($item); $key = utf8_encode($key); 
}); 

$job_return_data_json = json_encode($job_return_data); 

有誰能告訴我爲什麼這可能會失敗嗎?

+0

檢查下面的代碼希望它會幫助你。 –

+0

你檢查下面的答案,它的工作? –

+0

不幸的是沒有工作。我甚至試圖把htmlspecialchars()作爲另一篇文章的建議。儘管我現在正在工作,但我只是通過filter_var($ link_to_check,FILTER_VALIDATE_URL)來放置每個URL, – jamie

回答

0

試試這個代碼,

$input = iconv('UTF-8', 'UTF-8//IGNORE', utf8_encode($input)); 
$json = json_decode($input); 

希望它可以幫助你。

相關問題