首页 > 开发 > PHP > 正文

老版本PHP转义Json里的特殊字符的函数

2024-05-04 23:35:59
字体:
来源:转载
供稿:网友
本文给大家分享的是一则在老版本的php里使用的PHP转义Json里的特殊字符的函数,虽然不是很实用了,但还是记录一下,有需要的小伙伴可以参考下。
 

在给一个 App 做 API,从服务器端的 MySQL 取出数据,然后生成 JSON。数据中有个字段叫 content,里面保存了文章内容,含有大量 HTML 标签,这个字段在转 json 的时候需要转义,因为有大量的特殊字符会破坏 json 的结构。

比如这么一段 content:

 

复制代码代码如下:

'Lorem ipsum "dolor" sit amet, consectetur / adipiscing elit.'

 

则必须要转化为:

 

复制代码代码如下:

Lorem ipsum /"dolor/" sit amet,/nconsectetur // adipiscing elit.

 

如果 PHP 版本 > 5.2,json_encode 自带转义。如果是旧版本的 PHP 则可以用下面的函数。
 

  1. # list from www.json.org: (/b backspace, /f formfeed) 
  2. public function escapeJsonString($value) { 
  3.   $escapers = array("//", "/", "/"""/n""/r""/t""/x08""/x0c"); 
  4.   $replacements = array("////", "///", "///"""//n""//r""//t""//f""//b"); 
  5.   $result = str_replace($escapers$replacements$value); 
  6.   return $result
?
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表