php url地址栏传中文乱码解决方法集合


Posted in PHP onJune 25, 2010

php地址栏传中文$_GET下来后乱码,urlencode和urldecode用法详解
url编码
语法: string urlencode(string str);
返回值: 字符串
函数种类: 编码处理
例如:

<?php
$ChineseName="我的名字,是中文的哦";
$EncodeStr=urlencode($ChineseName);
echo "<a href=/cgi/personal.cgi?name=$EncodeStr>我的名字</a>";
?>

url解码
还原 URL 编码字符串。
语法: string urldecode(string str);
返回值: 字符串
函数种类: 编码处理
例如:
对前面传过来的中文进行处理显示
<?php
$DecodeStr=urldecode($_GET['name']);//你可能不用解码都可以,因为浏览器会自动帮你解码
echo $DecodeStr;
?>

关于php用get方法从url上获得的中文乱码问题

使用$gonghui = iconv("gb2312","UTF-8",$gonghui);另一方法代码
/**
* 多字节字符串编码转换函数
*
* @param string str 需要进行编码转换的字符串
* @param string to_encoding 指定转换为某种编码,如:gb2312、gbk、utf-8等
* @param mixed from_encoding 混合指定原来字串的编码,如:同时指定 JIS, eucjp-win, sjis-win 混合编码
* @return string
string mb_convert_encoding ( string str, string to_encoding [, mixed from_encoding] )
**/
mb_convert_encoding 函数为php内部多字节字符串编码转换函数,可以在有需要的使用场合,几乎支持所有编码。PHP  >= 4.0.6、 5 版本支持。

直接获取 reg.php?gh=某某;

 //工会登入参

$gonghui = $_GET['gh'];

获得的$gonghui 为gb2312编码 输出到utf-8网页上显示乱码

改成

 //工会登入参数
 $gonghui = $_GET['gh'];
 $gonghui = mb_convert_encoding($gonghui, "UTF-8", "gb2312");

 就显示正常了

对整个页面进行转换

该方法适用所有编码环境。这样把前128个字符以外(显示字符)的字符集都用   NCR(Numeric character reference,如“汉字”将转换成“汉字”这种形式)来表示,这样的编码在任意编码环境下页面都能正 常显示。

在php文件的头部加上下面三行代码:

mb_internal_encoding("gb2312");  // 这里的gb2312是你网站原来的编码     
mb_http_output("HTML-ENTITIES");     
ob_start('mb_output_handler'); 

使用mb_convert_encoding 函数需启用PHP 的mbstring (multi-byte string)扩展。

如果没有没有开启php的mbstring扩展,则需要做如下设置,让php支持该扩展。

1、windows 服务器环境
编辑 php.ini 文件,将; extension=php_mbstring.dll 前面的 ; 去掉,重启网页服务器。

2、Linux服务器环境
在编译配置时加入 --enable-mbstring=cn 编译参数,再进行PHP的编译安装。

其它网友的第三个参考方法:
//方法一 urldecode
$url = 'aaa.php?region='.urldecode("四川省");
<a href="<?php echo $url;?>">aaa </a>

//方法二base64_encode

<?
$test="四川省";
$test1=base64_encode($test);
echo '<a href="3water.com?region=$test1">aaa </a>';
?>

另一页面使用base64_decode解开

base64_decode($region);

//方法三让服务器支持中文

[root@dhcp ~]# locale

lang=zh_cn.utf-8
lc_ctype="zh_cn.utf-8"
lc_numeric="zh_cn.utf-8"
lc_time=c
lc_collate=c
lc_monetary="zh_cn.utf-8"
lc_messages="zh_cn.utf-8"
lc_paper="zh_cn.utf-8"
lc_name="zh_cn.utf-8"
lc_address="zh_cn.utf-8"
lc_telephone="zh_cn.utf-8"
lc_measurement="zh_cn.utf-8"
lc_identification="zh_cn.utf-8"
lc_all=
[root@dhcp ~]#

PHP 相关文章推荐
第八节--访问方式
Nov 16 PHP
PHP的单引号和双引号 字符串效率
May 27 PHP
深入理解PHP原理之异常机制
Aug 21 PHP
PHP容易被忽略而出错陷阱 数字与字符串比较
Nov 10 PHP
php批量更改数据库表前缀实现方法
Oct 26 PHP
php去除字符串换行符示例分享
Feb 13 PHP
本地计算机无法启动Apache故障处理
Aug 08 PHP
PHP strip_tags() 去字符串中的 HTML、XML 以及 PHP 标签的函数
May 22 PHP
详解php用curl调用接口方法,get和post两种方式
Jan 13 PHP
laravel 解决Eloquent ORM的save方法无法插入数据的问题
Oct 21 PHP
在Laravel中使用MongoDB的方法示例
Nov 11 PHP
PHP的new static和new self的区别与使用
Nov 27 PHP
PHP+ACCESS 文章管理程序代码
Jun 21 #PHP
php $_SERVER[&quot;REQUEST_URI&quot;]获取值的通用解决方法
Jun 21 #PHP
php自动加载的两种实现方法
Jun 21 #PHP
PHP定时自动生成静态HTML的实现代码
Jun 20 #PHP
PHP XML操作的各种方法解析(比较详细)
Jun 17 #PHP
PHP操作xml代码
Jun 17 #PHP
PHP XML error parsing SOAP payload on line 1
Jun 17 #PHP
You might like
PHP详解ASCII码对照表与字符转换
2011/12/05 PHP
php mail to 配置详解
2014/01/16 PHP
php 使用file_get_contents读取大文件的方法
2014/11/13 PHP
PHP实现的简单操作SQLite数据库类与用法示例
2017/06/19 PHP
php实现在线考试系统【附源码】
2018/09/18 PHP
Javascript实例教程(19) 使用HoTMetal(7)
2006/12/23 Javascript
收藏一些不常用,但是有用的代码
2007/03/12 Javascript
学习面向对象之面向对象的术语
2010/11/30 Javascript
中国地区三级联动下拉菜单效果分析
2012/11/15 Javascript
JavaScript中“+”的陷阱深刻理解
2012/12/04 Javascript
js定时器怎么写?就是在特定时间执行某段程序
2013/10/11 Javascript
js定时器的使用(实例讲解)
2014/01/06 Javascript
Jquery 实现图片轮换
2015/01/28 Javascript
JavaScript实现的圆形浮动标签云效果实例
2015/08/06 Javascript
JavaScript操作HTML DOM节点的基础教程
2016/03/11 Javascript
js验证框架之RealyEasy验证详解
2016/06/08 Javascript
JavaScript闭包和回调详解
2017/08/09 Javascript
浅析微信扫码登录原理(小结)
2018/10/29 Javascript
Vue 处理表单input单行文本框的实例代码
2019/05/09 Javascript
vue项目或网页上实现文字转换成语音播放功能
2020/06/09 Javascript
python scipy求解非线性方程的方法(fsolve/root)
2018/11/12 Python
Python实现二维曲线拟合的方法
2018/12/29 Python
深入浅析Python 中的sklearn模型选择
2019/10/12 Python
Kmeans均值聚类算法原理以及Python如何实现
2020/09/26 Python
HTML5实现晶莹剔透的雨滴特效
2014/05/14 HTML / CSS
澳大利亚在线床零售商:Bedworks
2020/09/01 全球购物
实习单位推荐信范文
2013/11/27 职场文书
表彰先进集体通报
2014/01/12 职场文书
授权收款委托书
2014/09/23 职场文书
优秀党务工作者先进事迹材料
2014/12/25 职场文书
关于调整工作时间的通知
2015/04/24 职场文书
2015年城管执法工作总结
2015/07/23 职场文书
高三物理教学反思
2016/02/20 职场文书
2019年七夕情人节浪漫祝福语大全!
2019/08/08 职场文书
golang json数组拼接的实例
2021/04/28 Golang
简单谈谈Python面向对象的相关知识
2021/06/28 Python