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 相关文章推荐
解决phpmyadmin中文乱码问题。。。
Jan 18 PHP
PHP 显示客户端IP与服务器IP的代码
Oct 12 PHP
php 记录进行累加并显示总时长为秒的结果
Nov 04 PHP
PHP 修复未正常关闭的HTML标签实现代码(支持嵌套和就近闭合)
Jun 07 PHP
fetchAll()与mysql_fetch_array()的区别详解
Jun 05 PHP
解析yahoo邮件用phpmailer发送的实例
Jun 24 PHP
ThinkPHP3.1的Widget新用法
Jun 19 PHP
PHP中的socket_read和socket_recv区别详解
Feb 09 PHP
php用户注册信息验证正则表达式
Nov 12 PHP
php使用curl详细解析及问题汇总
Aug 11 PHP
PHP实现的多维数组排序算法分析
Feb 10 PHP
Yii redis集合的基本使用教程
Jun 14 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 error_log 函数的使用
2009/04/13 PHP
php变量范围介绍
2012/10/15 PHP
Windows下安装PHP单元测试环境PHPUnit图文教程
2014/10/24 PHP
php禁止直接从浏览器输入地址访问.php文件的方法
2014/11/04 PHP
浅谈PHP中output_buffering
2015/07/13 PHP
php无法连接mysql数据库的正确解决方法
2016/07/01 PHP
Js event事件在IE、FF兼容性问题
2011/01/01 Javascript
js跨域问题浅析及解决方法优缺点对比
2014/11/08 Javascript
JS逆序遍历实现代码
2014/12/02 Javascript
Javascript基础教程之关键字和保留字汇总
2015/01/18 Javascript
浅谈javascript获取元素transform参数
2015/07/24 Javascript
分享12个非常实用的JavaScript小技巧
2016/05/11 Javascript
sso跨域写cookie的一段js脚本(推荐)
2016/05/25 Javascript
Bootstrap datepicker日期选择器插件使用详解
2017/07/26 Javascript
详解如何构建一个Angular6的第三方npm包
2018/09/07 Javascript
JS跨域请求的问题解析
2018/12/03 Javascript
vue在自定义组件中使用v-model进行数据绑定的方法
2019/03/25 Javascript
vue+高德地图写地图选址组件的方法
2019/05/18 Javascript
Vue开发中遇到的跨域问题及解决方法
2020/02/11 Javascript
原生js+canvas实现验证码
2020/11/29 Javascript
python制作一个桌面便签软件
2015/08/09 Python
Python中使用haystack实现django全文检索搜索引擎功能
2017/08/26 Python
python 公共方法汇总解析
2019/09/16 Python
Python更改pip镜像源的方法示例
2020/12/01 Python
详解background属性的8个属性值(面试题)
2020/11/02 HTML / CSS
prAna官网:瑜伽、旅行和冒险服装
2019/03/10 全球购物
迪卡侬比利时官网:Decathlon比利时
2019/12/28 全球购物
计算机应用专业应届毕业生中文求职信范文
2013/11/29 职场文书
班级活动策划书
2014/02/06 职场文书
生产部岗位职责范文
2014/02/07 职场文书
教师产假请假条范文
2014/04/10 职场文书
个人授权委托书范本格式
2014/10/12 职场文书
2016优秀员工先进事迹材料
2016/02/25 职场文书
Java基于Dijkstra算法实现校园导游程序
2022/03/17 Java/Android
MySQL 数据表操作
2022/05/04 MySQL
TypeScript 内置高级类型编程示例
2022/09/23 Javascript