PHP5.3htmlentities与json_encode的坑

今天在线上使用了

网站建设哪家好,找成都创新互联公司!专注于网页设计、网站建设、微信开发、成都小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了下花园免费建站欢迎大家使用!

json_encode(htmlentities($value))

发现出现了!

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

乍一看,不知道出现了什么问题,经过看来资料发现PHP 5.4之前的

htmlentities(string,quotestyle,character-set)

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

如果里面有中文的话就就乱码了不能转义了,json_encode只认UTF-8.导致出现报错。

改为

htmlentities($instance,ENT_QUOTES ,'UTF-8')

解决


分享文章:PHP5.3htmlentities与json_encode的坑
文章源于:http://scyanting.com/article/pcocdd.html