首页 > PHP > php json_encode 遇到html标签 js错误

php json_encode 遇到html标签 js错误

当php  json_encode 如下的

$output = array(‘success’ => true, ‘data’ => ‘<p>test</p>’);

时候,

如果前端的js是用eval(‘(‘ + jsonStr + ‘)’);的方式,亦或window.JSON.parse  都会报错

原因在于php的json_encode 默认是不转义< > 这种标签的,

这时候使用json_encode($output, JSON_HEX_TAG) 来把输出的tag开始结束符号转移掉就不会出错了

<
会被转义成\u003C
>
会被转义成 \u003E
 

注意:这根htmlspecialchars两码事

分类: PHP 标签: , ,
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.