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

 

在經過別人接口請求信息的時候,偶爾會遇到因爲部分字符,如如下狀況,則經過json_decode是會返回null的php

可是這種狀況一般不是因爲總體編碼的問題,由於在解析的時候就是以utf-8的編碼解析的json

 

 

這種狀況一般會是中英文並存,可是部分空白字符沒法識別。curl

 

經過對系統邏輯的觀察,應該是因爲前段保存字符的時候出現了非utf-8可以識別的字符,這種狀況在json_encode中並不受影響,因此直接致使了接口獲取數據的時候出現非法字符編碼

 

解決方案:url

 

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

  

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

這樣就可以順利的json_decode 了blog

相關文章
相關標籤/搜索