PHP中文URL编解码详细说明

本文介绍了 PHP 中用于处理 URL 的 urlencode 和 rawurlencode 函数的功能,并解释了 urldecode 和 rawurldecode 函数如何解码 URL 中的中文字符。特别强调了解码后的字符串可能需要进一步的编码转换以适应不同的页面编码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

urldecode() 和 rawurldecode() 解码出的字符串是 UTF-8格式的编码,如果URL中含有中文的话,而页面设置又不是 UTF-8 的话,则要把解码出的字符串进行转换,才能正常显示


$a ='?a=中文';
php教程中文url编解码详细说明
在php中urlencode和rawurlencode 是对中文进行编码的
string urlencode ( string str) 
返回字符串,此字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数。这是在 rfc 1738 中描述的编码,是为了保护原义字符以免其被解释为特殊的 url 定界符,同时保护 url 格式以免其被传输媒体(像一些邮件系统)使用字符转换时弄乱

*/

$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 的话,则要把解码出的字符串进行转换,才能正常显示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值