在网络建设中可以发现,URL参数在传输过程中被处理过,即参数被编码。在接收页面的地址栏中显示如下的URL查询字符串:http://localhost:8080/request.php?user=%E9%87%91%E4%B8%89%E8%83%96&pass=12345678
在上面的查询字符串中,所有双字节的汉字全部被编码显示。但对于ASCII字符则不进行编码处理。查询字符串未被解析之前,以编码形式呈现在浏览器中的地址文本框中,这在一定程度上可以防止双字节字符信息被直接看到,当然这不是加密,自然无法保护查询字符串的信息安全。
实际上,在查询字符串中有几个特殊的字符,了解这些字符所代表的意思,可以准确获取查询字符串中的参数信息。
在PHP中对字符串进行编码可以通过urlen-code()函数实现。
例如,在下面示例中有两条超链接,使用ur-lencode()函数对在URL中的查询字符串进行编码,一个是经过编码,一个没有经过编码,则在传输过程中可以看到地址栏中不同的显示效果。
<a href="request.php?name=这是秘密信息,需编码" data-role="button">未编码信息</a><a href="request.php?name=<?PHP echo URLencode("这是秘密信息,需编码传输"); ?>" data-role="button">编码信息</a>
当前文章标题:查询字符串编码
当前URL:http://www.lyjtt.cn/news/wzzz/3269.html
上一篇:获取查询字符串的值
下一篇:认识会话变量