PHP5.3htmlentities與json_encode的坑

科技小能手發表於2017-11-12

今天線上上使用了

1
json_encode(htmlentities($value))

發現出現了!

1
[03-Jul-2015 02:52:44 UTC] PHP Warning:  json_encode_plus() [<a href=`function.json-encode-plus`>function.json-encode-plus</a>]: Invalid UTF-8 sequence in argument in /home/users/ouerqiang/fbiz/framework/BizBootstrap.php on line 106


乍一看,不知道出現了什麼問題,經過看來資料發現PHP 5.4之前的

1
htmlentities(string,quotestyle,character-set)

其中character-set=SO-8859-1。

如果裡面有中文的話就就亂碼了不能轉義了,json_encode只認UTF-8.導致出現報錯。

改為

1
htmlentities($instance,ENT_QUOTES ,`UTF-8`)


解決



本文轉自 夢朝思夕 51CTO部落格,原文連結:http://blog.51cto.com/qiangmzsx/1670507


相關文章