PHP实现JS中escape与unescape的方法


Posted in PHP onJuly 11, 2016

本文实例讲述了PHP实现JS中escape与unescape的方法。分享给大家供大家参考,具体如下:

JavaScript中的escape和unescape是吧字符串转换为unicode十六进制编码,跟JSON的编码格式是一样的,所以可以通过PHP中的json_encode和json_decode实现PHP版本的escape和unescape.

代码如下:

<?php
function escape($str) {
  return str_replace('\\', '%', substr(json_encode($str), 1, -1));
}
function unescape($str) {
  return json_decode('"'.str_replace('%', '\\', $str).'"');
}
$str = '%u5f90%u5dde%u5e02 %u811a%u672c%u4e4b%u5bb6 1234';
$str_escape = '徐州市 三水点靠木 1234';
echo "$str<br>\n$str_escape<br>\n";
echo unescape($str), "<br>\n";
echo escape($str_escape), "<br>\n";

运行结果如下:

%u5f90%u5dde%u5e02 %u811a%u672c%u4e4b%u5bb6 1234
徐州市 三水点靠木 1234
徐州市 三水点靠木 1234
%u5f90%u5dde%u5e02 %u811a%u672c%u4e4b%u5bb6 1234

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php基础知识:类与对象(5) static
Dec 13 PHP
php数组一对一替换实现代码
Aug 31 PHP
利用php下载xls文件(自己动手写的)
Apr 18 PHP
php使用curl简单抓取远程url的方法
Mar 13 PHP
PHP中判断文件存在使用is_file还是file_exists?
Apr 03 PHP
基于ThinkPHP实现批量删除
Dec 18 PHP
thinkPHP连接sqlite3数据库的实现方法(附Thinkphp代码生成器下载)
May 27 PHP
php图像验证码生成代码
Jun 08 PHP
php-beanstalkd消息队列类实例分享
Jul 19 PHP
thinkphp ajaxfileupload实现异步上传图片的示例
Aug 28 PHP
php之可变变量的实例详解
Sep 12 PHP
PHP高并发和大流量解决方案整理
Mar 09 PHP
php处理复杂xml数据示例
Jul 11 #PHP
php的debug相关函数用法示例
Jul 11 #PHP
php错误日志简单配置方法
Jul 11 #PHP
PHP进行批量任务处理不超时的解决方法
Jul 11 #PHP
PHP封装的数据库保存session功能类
Jul 11 #PHP
php中array_column函数简单实现方法
Jul 11 #PHP
PHP针对字符串开头和结尾的判断方法
Jul 11 #PHP
You might like
php file_put_contents()功能函数(集成了fopen、fwrite、fclose)
2011/05/24 PHP
php中Array2xml类实现数组转化成XML实例
2014/12/08 PHP
javascript loadScript异步加载脚本示例讲解
2013/11/14 Javascript
基于jQuery实现文本框缩放以及上下移动功能
2014/11/24 Javascript
JS+CSS实现模仿浏览器网页字符查找功能的方法
2015/02/26 Javascript
js 右侧浮动层效果实现代码(跟随滚动)
2015/11/22 Javascript
javascript仿百度输入框提示自动下拉补全
2016/01/07 Javascript
javascript深拷贝(deepClone)详解
2016/08/24 Javascript
angular使用bootstrap方法手动启动的实例代码
2017/07/18 Javascript
Vue中render方法的使用详解
2018/01/26 Javascript
利用vue.js把静态json绑定bootstrap的table方法
2018/08/28 Javascript
每个 JavaScript 工程师都应懂的33个概念
2018/10/22 Javascript
JS实现提示效果弹出及延迟隐藏的功能
2019/08/26 Javascript
js实现GIF图片的分解和合成
2019/10/24 Javascript
基于form-data请求格式详解
2019/10/29 Javascript
react 原生实现头像滚动播放的示例
2020/04/21 Javascript
手动实现vue2.0的双向数据绑定原理详解
2021/02/06 Vue.js
[01:20:06]TNC vs VG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python的Django框架中的select_related函数对QuerySet 查询的优化
2015/04/01 Python
初步介绍Python中的pydoc模块和distutils模块
2015/04/13 Python
python协程gevent案例 爬取斗鱼图片过程解析
2019/08/27 Python
python向图片里添加文字
2019/11/26 Python
django使用F方法更新一个对象多个对象字段的实现
2020/03/28 Python
keras使用Sequence类调用大规模数据集进行训练的实现
2020/06/22 Python
python反扒机制的5种解决方法
2021/02/06 Python
HTML+CSS3模拟心的跳动实例代码
2017/09/05 HTML / CSS
HTML5 Web Database 数据库的SQL语句的使用方法
2012/12/09 HTML / CSS
英国领先的办公用品供应商:Viking
2016/08/01 全球购物
斯巴达比赛商店:Spartan Race
2019/01/08 全球购物
IFCHIC台湾:欧美国际设计师品牌
2019/05/18 全球购物
.net笔试题
2014/03/03 面试题
听课评语大全
2014/04/30 职场文书
工商管理专业毕业生自我鉴定2014
2014/10/04 职场文书
2014年药店店长工作总结
2014/11/17 职场文书
名人传读书笔记
2015/06/26 职场文书
2016年“5.12”护士节慰问信
2015/11/30 职场文书