PHP实现JS中escape与unescape的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了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 = '徐州市 【宜配屋www.yipeiwu.com】 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
徐州市 【宜配屋www.yipeiwu.com】 1234
徐州市 【宜配屋www.yipeiwu.com】 1234
%u5f90%u5dde%u5e02 %u811a%u672c%u4e4b%u5bb6 1234

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP中json格式数据操作技巧汇总》、《PHP错误与异常处理方法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

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

相关文章

php生成excel列名超过26列大于Z时的解决方法

本文实例讲述了php生成excel列名超过26列大于Z时的解决方法。分享给大家供大家参考。具体分析如下: 我们生成excel都会使用phpExcel类,这里就来给大家介绍在生成excel...

详解PHP的Yii框架中的Controller控制器

控制器是 MVC 模式中的一部分, 是继承yii\base\Controller类的对象,负责处理请求和生成响应。 具体来说,控制器从应用主体接管控制后会分析请求数据并传送到模型, 传送...

PHP实现网站应用微信登录功能详解

PHP实现网站应用微信登录功能详解

本文实例讲述了PHP实现网站应用微信登录功能。分享给大家供大家参考,具体如下: 背景 近期进行 PC 端的网站开发,需要用到微信授权登录,考虑到前期手机端已经获得了大量的微信用户...

探讨捕获php错误信息方法的详解

PS:1.捕获PHP语法错误2.严重错误 用正常的 set_error_handle无法捕获此两类错误,这是捕获此类错误的技巧复制代码 代码如下://test.php 页面error_r...

PHP中对用户身份认证实现两种方法

当访问者浏览受保护页面时,客户端浏览器会弹出对话窗口要求用户输入用户名和密码,对用户的身份进行验证,以决定用户是否有权访问页面。下面用两种方法来说明其实现原理。   一、用HTTP标头来...