原创

PHP 处理 Url 传递特殊字符及中文字符方法

在请求地址 url 中往往会传递一些中文字符或其他特殊字符,有时会出现乱码情况,针对中文字符一般做法:进行urlencode($text)转码,但对于特殊字符,比如html字符 SQL注入的相关字符串时处于安全问题考虑,系统一般会过滤掉,而有时需要此类特殊字符,下面为大家讲述一种比较完善的方式。

1、使用base64_encode($text) 编码,服务端 base64_decode($text) 解码,编码后的字符串中含有 "/", "+", "=" 等字符;

2、在用户提交加密串式,把 + 字符换成别的字符,str_replace('+', '_', $content); 之后再服务端处理时再次转换字符串 str_replace('_', '+', $content); 具体代码如下:

function base_encode($str) {
$src  = array("/","+","=");
$dist = array("_a","_b","_c");
$old  = base64_encode($str);
$new  = str_replace($src,$dist,$old);
return $new;
}

function base_decode($str) {
$src = array("_a","_b","_c");
$dist  = array("/","+","=");
$old  = str_replace($src,$dist,$str);
$new = base64_decode($old);
return $new;
}
~阅读全文~人机检测~

关注下方微信公众号“Java精选”(w_z90110),回复关键词领取资料:如Mysql、Hadoop、Dubbo、Spring Boot等,免费领取视频教程、资料文档和项目源码。

Java精选专注程序员推送一些Java开发知识,包括基础知识、各大流行框架(Mybatis、Spring、Spring Boot等)、大数据技术(Storm、Hadoop、MapReduce、Spark等)、数据库(Mysql、Oracle、NoSQL等)、算法与数据结构、面试专题、面试技巧经验、职业规划以及优质开源项目等。其中一部分由小编总结整理,另一部分来源于网络上优质资源,希望对大家的学习和工作有所帮助。

评论

分享:

支付宝

微信