PHP中文URL编解码详细说明
程序员文章站
2024-01-07 14:15:52
...
,urldecode() 和 rawurldecode() 解码出的字符串是 UTF-8格式的编码,如果URL中含有中文的话,而页面设置又不是 UTF-8 的话,则要把解码出的字符串进行转换,才能正常显示
php教程中文url编解码详细说明
在php中urlencode和rawurlencode 是对中文进行编码的
string urlencode ( string str)
返回字符串,此字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数。这是在 rfc 1738 中描述的编码,是为了保护原义字符以免其被解释为特殊的 url 定界符,同时保护 url 格式以免其被传输媒体(像一些邮件系统)使用字符转换时弄乱
*/
$a ='?a=中文';
$urlencode =urlencode($a);
echo $urlencode; //%3fa%3d%d6%d0%ce%c4
/*
string rawurldecode ( string str)
返回字符串,此字符串中百分号(%)后跟两位十六进制数的序列都将被替换成原义字符。
*/
$c = rawurlencode($urlencode);///a%253d%25d6%25d0%25ce%25c4;
echo $c;
/*
有一点需要注意的地方是,urldecode() 和 rawurldecode() 解码出的字符串是 utf-8格式的编码,如果url中含有中文的话,而页面设置又不是 utf-8 的话,则要把解码出的字符串进行转换,才能正常显示