PHP json_decode 無法解析特殊問號字符

編程語言 PHP 英語 盤點 聯盟你我他 聯盟你我他 2017-10-29

在通過別人接口請求信息的時候,偶爾會遇到由於部分字符,如以下情況,則通過json_decode是會返回null的

但是這種情況通常不是由於整體編碼的問題,因為在解析的時候就是以utf-8的編碼解析的

PHP json_decode 無法解析特殊問號字符

這種情況通常會是中英文並存,但是部分空白字符無法識別。

通過對系統邏輯的觀察,應該是由於前段保存字符的時候出現了非utf-8能夠識別的字符,這種情況在json_encode中並不受影響,所以直接導致了接口獲取數據的時候出現非法字符

解決方案:

1 $return_data=mb_convert_encoding($return_data, "UTF-8","UTF-8");

對通過curl請求回來的字符在進行一次強制編碼,這種情況下原本的utf-8編碼的文字不會受到影響,同時utf-8無法識別的字符將會被強制解析,解析出來之後的字符就會變成英文符號的? ,

這樣就能夠順利的json_decode 了

相關推薦

推薦中...