作者:lxm淡淡嘚甜_671 | 来源:互联网 | 2014-08-27 17:10
*functionphpescape($str){$sublen=strlen($str);$restring="";for($i=0;$i<$sublen;$i++){if(ord($str[$i])>=127){$tmps教程tring=bin2he...
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
=127){$tmps教程tring=bin2he...">
php中escape unescape的写法
发布: 来源: 添加日期:2014-08-25 09:15:25 浏览: 评论:0
- */
- function phpescape($str){
- $sublen=strlen($str);
- $restring="";
- for ($i=0;$i<$sublen;$i++){
- if(ord($str[$i])>=127){
- $tmps教程tring=bin2hex(iconv("utf-8","ucs-2",substr($str,$i,2)));
-
- if (!eregi("win",php_os)){
- $tmpstring=substr($tmpstring,2,2).substr($tmpstring,0,2);
- }
- $restring.="%u".$tmpstring;
- $i++;
- } else {
- $restring.="%".dechex(ord($str[$i]));
- }
- }
- return $restring;
- }
- function unescape($str) {
- $str = rawurldecode($str);
- preg_match_all("/%u.{4}|&#x.{4};|&#d+;|.+/u",$str,$r);
- $ar = $r[0];
- foreach($ar as $k=>$v) {
- if(substr($v,0,2) == "%u")
- $ar[$k] = iconv("ucs-2","utf-8",pack("h4",substr($v,-4)));
- elseif(substr($v,0,3) == "&#x")
- $ar[$k] = iconv("ucs-2","utf-8",pack("h4",substr($v,3,-1)));
- elseif(substr($v,0,2) == "&#") {
- $ar[$k] = iconv("ucs-2","utf-8",pack("n",substr($v,2,-1)));
- }
- }
- return join("",$ar);
- }
- function escape($str) {
- preg_match_all("/[x80-xff].|[x01-x7f]+/",$str,$r);
- $ar = $r[0];
- foreach($ar as $k=>$v) {
- if(ord($v[0]) < 128)
- $ar[$k] = rawurlencode($v);
- else
- $ar[$k] = "%u".bin2hex(iconv("gb2312","ucs-2",$v));
- }
- return join("",$ar);
- }
- function unescape($str) {
- $str = rawurldecode($str);
- preg_match_all("/(?:%u.{4})|.+/",$str,$r);
- $ar = $r[0];
- foreach($ar as $k=>$v) {
- if(substr($v,0,2) == "%u" && strlen($v) == 6)
- $ar[$k] = iconv("ucs-2","gb2312",pack("h4",substr($v,-4)));
- }
- return join("",$ar);
- }
推荐阅读
-
本文总结了导致网站乱码的常见原因,并提供了详细的解决方案,包括文件编码、HTML元标签设置、服务器响应头配置、数据库字符集调整以及PHP与MySQL交互时的编码处理。 ...
[详细]
蜡笔小新 2024-12-25 14:57:54
-
本文将深入探讨PHP编程语言的基本概念,并解释PHP概念股的含义。通过详细解析,帮助读者理解PHP在Web开发和股票市场中的重要性。 ...
[详细]
蜡笔小新 2024-12-25 15:02:45
-
-
本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ...
[详细]
蜡笔小新 2024-12-26 13:12:48
-
根据最新发布的《互联网人才趋势报告》,尽管大量IT从业者已转向Python开发,但随着人工智能和大数据领域的迅猛发展,仍存在巨大的人才缺口。本文将详细介绍如何使用Python编写一个简单的爬虫程序,并提供完整的代码示例。 ...
[详细]
蜡笔小新 2024-12-26 10:42:40
-
本文介绍如何在Linux服务器之间使用SCP命令进行文件传输。SCP(Secure Copy Protocol)是一种基于SSH的安全文件传输协议,支持从远程机器复制文件到本地服务器或反之。示例包括从192.168.45.147复制tomcat目录到本地/home路径。 ...
[详细]
蜡笔小新 2024-12-26 07:43:09
-
本文深入探讨了MySQL中的索引机制,包括索引的基本概念、优势与劣势、分类及其实现原理,并详细介绍了索引的使用场景和优化技巧。通过具体示例,帮助读者更好地理解和应用索引以提升数据库性能。 ...
[详细]
蜡笔小新 2024-12-25 19:52:47
-
本文探讨了如何在 PHP 的 Eloquent ORM 中实现数据表之间的关联查询,并通过具体示例详细解释了如何将关联数据嵌入到查询结果中。这不仅提高了数据查询的效率,还简化了代码逻辑。 ...
[详细]
蜡笔小新 2024-12-25 18:14:14
-
2013年5月9日,PHP官方发布了PHP 5.5.0rc1和PHP 5.4.15正式版,这两个版本均支持64位环境。本文将详细介绍Zend OPcache的功能及其在Windows环境下的配置与测试。 ...
[详细]
蜡笔小新 2024-12-26 12:56:20
-
本文详细介绍了VMware的多种认证选项,帮助你根据职业需求和个人技能选择最合适的认证路径,涵盖从基础到高级的不同层次认证。 ...
[详细]
蜡笔小新 2024-12-26 11:51:27
-
VPX611是北京青翼科技推出的一款采用6U VPX架构的高性能数据存储板。该板卡搭载两片Xilinx Kintex-7系列FPGA作为主控单元,内置RAID控制器,支持多达8个mSATA盘,最大存储容量可达8TB,持续写入带宽高达3.2GB/s。 ...
[详细]
蜡笔小新 2024-12-26 11:41:58
-
本文介绍了一个用于Composer的源切换管理工具——Composer Registry Manager。该项目旨在简化Composer包源的管理和切换,避免与常见的CRM系统混淆,并提供了详细的安装和使用指南。 ...
[详细]
蜡笔小新 2024-12-25 19:34:14
-
本文将详细介绍在PHP中去除换行符的各种方法,并结合实际应用场景进行说明。通过本文,您将了解如何根据不同操作系统的特点,选择最合适的换行符处理方式。 ...
[详细]
蜡笔小新 2024-12-25 19:30:22
-
在处理Java项目中的JAR包冲突时,我们遇到了JaxWsDynamicClientFactory被弃用的问题,并成功将其迁移到org.codehaus.xfire.client。本文详细介绍了这一过程及解决方案。 ...
[详细]
蜡笔小新 2024-12-25 18:48:34
-
探讨如何真正掌握Java EE,包括所需技能、工具和实践经验。资深软件教学总监李刚分享了对毕业生简历中常见问题的看法,并提供了详尽的标准。 ...
[详细]
蜡笔小新 2024-12-25 13:38:29
-
本文介绍 PHP 函数 mysql_field_len 的使用方法,该函数用于返回 MySQL 查询结果集中指定字段的长度。适用于 PHP 4 和 PHP 5 版本。 ...
[详细]
蜡笔小新 2024-12-25 13:15:19
-
lxm淡淡嘚甜_671
这个家伙很懒,什么也没留下!