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 相关文章推荐
递归列出所有文件和目录
Oct 09 PHP
亲密接触PHP之PHP语法学习笔记1
Dec 17 PHP
php下MYSQL limit的优化
Jan 10 PHP
php表单提交问题的解决方法
Apr 12 PHP
header导出Excel应用示例
Jan 24 PHP
ThinkPHP、ZF2、Yaf、Laravel框架路由大比拼
Mar 25 PHP
微信自定义菜单的处理开发示例
Apr 16 PHP
php一个解析字符串排列数组的方法
May 12 PHP
CodeIgniter多语言实现方法详解
Jan 20 PHP
zend framework重定向方法小结
May 28 PHP
基于ThinkPHP实现的日历功能实例详解
Apr 15 PHP
php两点地理坐标距离的计算方法
Dec 29 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
thinkphp常见路径用法分析
2014/12/02 PHP
PHP中使用hidef扩展代替define提高性能
2015/04/09 PHP
php写入、删除与复制文件的方法
2015/06/20 PHP
PHP 7.1新特性的汇总介绍
2016/12/16 PHP
FLASH 广告之外的链接
2008/12/16 Javascript
javaScript复制功能调用实现方案
2012/12/13 Javascript
Jquery多选框互相内容交换的实例代码
2013/07/04 Javascript
Javascript 鼠标移动上去 滑块跟随效果代码分享
2013/11/23 Javascript
再谈Jquery Ajax方法传递到action(补充)
2014/05/12 Javascript
详细讲解JavaScript中的this绑定
2016/10/10 Javascript
Angularjs分页查询的实现
2017/02/24 Javascript
原生JavaScript实现Tooltip浮动提示框特效
2017/03/07 Javascript
JavaScript校验Number(4,1)格式的数字实例代码
2017/03/13 Javascript
微信小程序之分享页面如何返回首页的示例
2018/03/28 Javascript
jQuery实现当拉动滚动条到底部加载数据的方法分析
2019/01/24 jQuery
mock.js模拟数据实现前后端分离
2019/07/24 Javascript
JavaScript中的this/call/apply/bind的使用及区别
2020/03/06 Javascript
VUE+elementui组件在table-cell单元格中绘制微型echarts图
2020/04/20 Javascript
[02:37]TI8勇士令状不朽珍藏II视频展示
2018/06/23 DOTA
Python书单 不将就
2017/07/11 Python
Python中协程用法代码详解
2018/02/10 Python
对Python 语音识别框架详解
2018/12/24 Python
python 3.74 运行import numpy as np 报错lib\site-packages\numpy\__init__.py
2019/10/06 Python
python绘制动态曲线教程
2020/02/24 Python
Python处理mysql特殊字符的问题
2020/03/02 Python
keras中模型训练class_weight,sample_weight区别说明
2020/05/23 Python
Matplotlib中rcParams使用方法
2021/01/05 Python
墨西哥网上购物:Linio墨西哥
2016/10/20 全球购物
巴西食品补充剂在线零售商:Músculos na Web
2017/08/07 全球购物
英国豪华文具和皮具配件经典老品牌:Smythson(斯迈森)
2018/04/19 全球购物
运动会解说词100字
2014/01/31 职场文书
2015年学校总务工作总结
2015/07/20 职场文书
管理者们如何制定2019年的工作计划?
2019/07/01 职场文书
python 爬取天气网卫星图片
2021/06/07 Python
《游戏王:大师决斗》将推出新卡牌包4月4日上线
2022/03/31 其他游戏
小程序自定义轮播图圆点组件
2022/06/25 Javascript