老版本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 相关文章推荐
建立动态的WML站点(二)
Oct 09 PHP
手把手教你使用DedeCms的采集的图文教程
Mar 11 PHP
PHP session有效期session.gc_maxlifetime
Apr 20 PHP
PHP常用开发函数解析之数组篇[未完结]
Jul 30 PHP
PHP检测用户是否关闭浏览器的方法
Feb 14 PHP
PHP实现文件下载【实例分享】
Apr 28 PHP
PHP基于正则批量替换Img中src内容实现获取缩略图的功能示例
Jun 07 PHP
php获取微信共享收货地址的方法
Dec 21 PHP
Linux下源码包安装Swoole及基本使用操作图文详解
Apr 02 PHP
浅谈laravel5.5 belongsToMany自身的正确用法
Oct 17 PHP
浅谈laravel框架与thinkPHP框架的区别
Oct 23 PHP
Yii框架 session 数据库存储操作方法示例
Nov 18 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
如何使用纯PHP实现定时器任务(Timer)
2015/07/31 PHP
php实现给一张图片加上水印效果
2016/01/02 PHP
Symfony生成二维码的方法
2016/02/04 PHP
PHP基于自增数据如何生成不重复的随机数示例
2017/05/19 PHP
php+ajax实现无刷新文件上传功能(ajaxuploadfile)
2018/02/11 PHP
php+mysql实现的无限分类方法类定义与使用示例
2020/05/27 PHP
基于php解决json_encode中文UNICODE转码问题
2020/11/10 PHP
音乐播放用的的几个函数
2006/09/07 Javascript
js实现的切换面板实例代码
2013/06/17 Javascript
javascript获得网页窗口实际大小的示例代码
2013/09/21 Javascript
JS判断文本框内容改变事件的简单实例
2014/03/07 Javascript
jQuery操作DOM之获取表单控件的值
2015/01/23 Javascript
javascript中的五种基本数据类型
2015/08/26 Javascript
下雪了 javascript实现雪花飞舞
2020/08/02 Javascript
angularjs 实现带查找筛选功能的select下拉框实例
2017/01/11 Javascript
微信小程序实现图片上传功能
2018/05/28 Javascript
JavaScript实现图片懒加载的方法分析
2018/07/05 Javascript
vue微信分享的实现(在当前页面分享其他页面)
2019/04/16 Javascript
Python实现堆排序的方法详解
2016/05/03 Python
Python排序算法实例代码
2017/08/10 Python
详解django使用include无法跳转的解决方法
2020/03/19 Python
如何实现更换Jupyter Notebook内核Python版本
2020/05/18 Python
python读取excel数据绘制简单曲线图的完整步骤记录
2020/10/30 Python
10个python爬虫入门基础代码实例 + 1个简单的python爬虫完整实例
2020/12/16 Python
conda安装tensorflow和conda常用命令小结
2021/02/20 Python
使用CSS禁止textarea调整大小功能的方法
2015/03/13 HTML / CSS
html5本地存储 localStorage操作使用详解
2016/09/20 HTML / CSS
马克华菲官方商城:Mark Fairwhale
2016/09/04 全球购物
澳大利亚在线百货商店:Real Smart
2017/08/13 全球购物
经典优秀个人求职自荐信格式
2013/09/25 职场文书
电脑租赁公司创业计划书
2014/01/08 职场文书
四风个人对照检查材料思想汇报(办公室通用版)
2014/10/07 职场文书
给领导的感谢信范文
2015/01/23 职场文书
基于python制作简易版学生信息管理系统
2021/04/20 Python
HTML5 新增内容和 API详解
2021/11/17 HTML / CSS
SpringBoot整合阿里云视频点播的过程详解
2021/12/06 Java/Android