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


Posted in PHP onJune 08, 2015

在给一个 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 则可以用下面的函数。

# list from www.json.org: (\b backspace, \f formfeed)
public function escapeJsonString($value) {
  $escapers = array("\\", "/", "\"", "\n", "\r", "\t", "\x08", "\x0c");
  $replacements = array("\\\\", "\\/", "\\\"", "\\n", "\\r", "\\t", "\\f", "\\b");
  $result = str_replace($escapers, $replacements, $value);
  return $result;
}

经常会用到,记录一下,希望对你有帮助。

PHP 相关文章推荐
apache+mysql+php+ssl服务器之完全安装攻略
Sep 05 PHP
Discuz板块横排显示图片的实现方法
May 28 PHP
elgg 获取文件图标地址的方法
Mar 20 PHP
php下拉选项的批量操作的实现代码
Oct 14 PHP
ThinkPHP连接数据库及主从数据库的设置教程
Aug 22 PHP
跟我学Laravel之快速入门
Oct 15 PHP
PHP实现PDO的mysql数据库操作类
Dec 12 PHP
php实现将Session写入数据库
Jul 26 PHP
linux下为php添加iconv模块的方法
Feb 28 PHP
PHP基于正则批量替换Img中src内容实现获取缩略图的功能示例
Jun 07 PHP
Laravel框架基础语法与知识点整理【模板变量、输出、include引入子视图等】
Dec 03 PHP
基于PHP的登录和注册的功能的实现
Aug 06 PHP
php查询whois信息的方法
Jun 08 #PHP
Yii获取当前url和域名的方法
Jun 08 #PHP
在Linux系统的服务器上隐藏PHP版本号的方法
Jun 06 #PHP
phpcms手机内容页面添加上一篇和下一篇
Jun 05 #PHP
DEDECMS首页调用图片集里的多张图片
Jun 05 #PHP
php比较相似字符串的方法
Jun 05 #PHP
浅谈PHP接收POST数据方式
Jun 05 #PHP
You might like
新闻分类录入、显示系统
2006/10/09 PHP
简单的cookie计数器实现源码
2013/06/07 PHP
利用谷歌 Translate API制作自己的翻译脚本
2014/06/04 PHP
PHP实现二维数组(或多维数组)转换成一维数组的常见方法总结
2019/12/04 PHP
JavaScript URL参数读取改进版
2009/01/16 Javascript
js实现的仿新浪微博完美的时间组件升级版
2011/12/20 Javascript
js改变鼠标的形状和样式的方法
2014/03/31 Javascript
jQuery实现冻结表头的方法
2015/03/09 Javascript
js模拟淘宝网的多级选择菜单实现方法
2015/08/18 Javascript
jQuery实现只允许输入数字和小数点的方法
2016/03/02 Javascript
javascript Promise简单学习使用方法小结
2016/05/17 Javascript
JS图片放大效果简单实现代码
2016/09/08 Javascript
JS填写银行卡号每隔4位数字加一个空格
2016/12/19 Javascript
vue弹窗消息组件的使用方法
2020/09/24 Javascript
Vue项目总结之webpack常规打包优化方案
2019/06/06 Javascript
JS扁平化输出数组的2种方法解析
2019/09/17 Javascript
[02:42]2014DOTA2国际邀请赛 三冰专访:我会打到Ti20
2014/07/13 DOTA
[00:32]2018DOTA2亚洲邀请赛VGJ.T出场
2018/04/03 DOTA
Python有序查找算法之二分法实例分析
2017/12/11 Python
Python hashlib加密模块常用方法解析
2019/12/18 Python
Django认证系统user对象实现过程解析
2020/03/02 Python
python读取图片颜色值并生成excel像素画的方法实例
2021/02/19 Python
HTML5 Canvas概述
2009/08/26 HTML / CSS
法国在线药房:DoctiPharma
2020/10/21 全球购物
俄罗斯外国汽车和国产汽车配件网上商店:Движком
2020/04/19 全球购物
C#如何允许一个类被继承但是避免这个类的方法被重载?
2015/02/24 面试题
行政助理的职责
2013/11/14 职场文书
领导证婚人证婚词
2014/01/13 职场文书
暑期社会实践感言
2014/02/25 职场文书
2014乡镇“三八”国际劳动妇女节活动总结
2014/03/01 职场文书
党员个人查摆剖析材料
2014/10/16 职场文书
简单的离婚协议书范本
2014/11/16 职场文书
孕妇离婚协议书范本
2014/11/20 职场文书
会议开幕致辞怎么写
2016/03/03 职场文书
python计算列表元素与乘积详情
2022/08/05 Python
Python sklearn分类决策树方法详解
2022/09/23 Python