优秀的手机游戏下载!
首页 php中,urldecode不转义中文

php中,urldecode不转义中文

发布时间:2024-08-12 17:55:11 编辑:手游帝 浏览:302

a页

&lta href=\”b.php?a=中文\”&gt链接&lt/a&gt

b页

&lt?php

$a= urldecode($_GET[\’a\’])

echo $a

?&gt

中文能够正常显示,保证2个页面的编码一致

jmeter参数中的url转码和url解码

url的在线编码和解码工具: http://tool.chinaz.com/tools/urlencode.aspx

1、基本知识

URLEncode:是指针对网页url中的中文字符的一种编码转化方式,最常见的就是Baidu、 Google等搜索引擎中输入中文查询时候,生成经过 Encode过的网页URL。URLEncode的方式一般有两种一种是传统的基于GB2312的Encode(Baidu、Yisou等使用),一种是 基于UTF-8的Encode(Google,Yahoo等使用)。本工具分别实现两种方式的Encode与Decode。

中文 -&gtGB2312的Encode -&gt����

中文 -&gtUTF-8的Encode -&gt中文

Html中的URLEncode:

编码为GB2312的html文件中,

http://ud03.kinoko.name/中文.rar -&gt浏览器自动转换为 -&gthttp://ud03.kinoko.name/����.rar

注意:Firefox对GB2312的Encode的中文URL支持不好,因为它默认是UTF-8编码发送URL的,但是ftp://协议可以,我试过了.我认为这应该算是Firefox一个bug.

编码为UTF-8的html文件中,

http://ud03.kinoko.name/中文.rar -&gt浏览器自动转换为 -&gthttp://ud03.kinoko.name/中文.rar

PHP中的URLEncode:

//GB2312的Encode

echo urlencode(“中文-_. “).”\\n”// ����-_.+

echo urldecode(“����-_. “).”\\n”//中文-_.

echo rawurlencode(“中文-_. “).”\\n”// ����-_.

echo rawurldecode(“����-_. “).”\\n”//中文-_.

?&gt

除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数。

urlencode和rawurlencode的区别:

urlencode 将空格则编码为加号(+)

rawurlencode 将空格则编码为加号( )

如果要使用UTF-8的Encode,有两种方法:

一、将文件存为UTF-8文件,直接使用urlencode、rawurlencode即可。

二、使用mb_convert_encoding函数。

$url = ‘http://ud03.kinoko.name/中文.rar’

echo urlencode(mb_convert_encoding($url, ‘utf-8′, ‘gb2312′)).”\\n”

echo rawurlencode(mb_convert_encoding($url, ‘utf-8′, ‘gb2312′)).”\\n”

//http://ud03.kinoko.name/中文.rar

php中,urldecode不转义中文

?&gt

实例:

function parseurl($url=”\”)

{

$url = rawurlencode(mb_convert_encoding($url, ‘gb2312′, ‘utf-8′))

$a = array(“:”, “/”, “@″)

$b = array(“:”, “/”, “@”)

$url = str_replace($a, $b, $url)

return $url

}

$url=”ftp://ud03:password@ud03.kinoko.name/中文/中文.rar”

echo parseurl($url)

//ftp://ud03:password@ud03.kinoko.name/����/����.rar

?&gt

JavaScript中的URLEncode:

中文-_. 中文-_.

encodeURI 不对下列字符进行编码:“:”、“/”、“”、“?”、“@”等特殊字符。

http://ud03.kinoko.name/中文.rarhttp://ud03.kinoko.name/中文.rar

2、示例

http://canvas.gdt.qq.com/canvas/1?viewid=%12%0C%08%E1%98%B7%CD%CB%DC%14%20%E4%A5%01%18%FF%89%18&ampckn=91142321196129

1)utf-8解码

http://canvas.gdt.qq.com/canvas/1?viewid=�ᘷ���� ������&ampckn=91142321196129

2)gb2312解码

http://canvas.gdt.qq.com/canvas/1?viewid=�针吠塑� 浈��?&ampckn=91142321196129

测试中提交的中文参数 需要进行URL转码

使用函数 ${__urlencode()}

例如 :

${__urlencode(你好)}

${__urlencode(${参数变量})}

测试中返回的中文参数 需要进行URL 解码

使用函数 ${__urldecode()}

例如 :

${__urldecode(%E4%BB%93%E5%BA%93)}

${__urldecode(${参数变量})}

原文地址https://blog.csdn.net/zhang_xingneng/article/details/106420944

以上就是关于php中,urldecode不转义中文全部的内容,如果了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

更多相关资讯

a页&lta href=\"b.php?a=中文\"&gt链接&lt/a&gtb页&lt?php$a= urldecod…
查看详情
a页&lta href=\"b.php?a=中文\"&gt链接&lt/a&gtb页&lt?php$a= urldecod…
查看详情
a页&lta href=\"b.php?a=中文\"&gt链接&lt/a&gtb页&lt?php$a= urldecod…
查看详情
相关资讯
猜你喜欢