PHP怎么对Url中的汉字进行编码和解码?(图文+视频)

2020-11-12

本篇文章主要给大家介绍PHP对url中的汉字进行编码及解码的具体实现方法。

有的新手朋友们对于url编码解码这个概念,或许有点陌生。但是如果这么说,当我们在浏览各大网页时,可能发现有的url里有一些特殊符号比如#号,&号,_号或者汉字等等,那么为了符合url的规范,存在这些符号的url就需要对其进行编码。这样简单的说明大家是否对url编码解码有一点了解了呢?

url编码解码,也可以叫做百分号编码,是统一资源定位(URL)编码方式。

下面我们结合简单的代码示例,为大家介绍PHP实现url中汉字编码和解码的方法。

一、url编码(urlencode)

<?php
$url = urlencode('PHP中文网');//把 PHP中文网 进行编码
$password = md5(123123);
echo "index.php?user=$url&password=$password" ;

在此段代码中,我们使用urlencode函数对“PHP中文网”进行编码操作,并且使用md5加密,最后输出拼接成的url进行测试。

结果如下图:

/2020/11/91557c66.png" /2020/11/91557c66.png" alt="36be34446190e89bfdffbb9c155f5c4.png

如图“中文网”这个三个汉字成功的进行了编码,都是以百分号数字字母的组合形式显示。并且原先的密码“123123”也进行了加密。

:urlencode表示编码 URL 字符串

urlencode返回值表示返回字符串,此字符串中除了 -_.
之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,空格则编码为加号(+)。

二、url解码(urldecode)

<?php
$url = urlencode('PHP中文网');//把 PHP中文网 进行编码
$password = md5(123123);
echo "index.php?user=$url&password=$password" . '<br>';
$url = urldecode("%E4%B8%AD%E6%96%87%E7%BD%91");  // 把编码还原成 PHP中文网
echo $url;

那么我们再对编码后的汉字进行解码,这里我们主要用到PHP中urldecode函数。

测试结果如下:

/2020/11/cf1ce06b.png" /2020/11/cf1ce06b.png" alt="ad23c1c929c5bb1f0077f1d2ad0c8cc.png

如图PHP后面的乱码已经解码成中文。

:urldecode表示解码已编码的 URL 字符串

urldecode返回值表示返回解码后的字符串。

对于url编码及解码的方法大家主要需要掌握urlencodeurldecode这两个函数。

url编码主要是为了符合url规范或防止SQL注入。

本篇就是关于PHP中url编码和解码的相关知识介绍,希望对需要的朋友有所帮助。

想要了解更多PHP知识,大家可以关注PHP中文网PHP视频教程,欢迎大家参考学习!

以上就是PHP怎么对Url中的汉字进行编码和解码?(图文+视频)的详细内容,更多请关注北冥有鱼其它相关文章!

本文转载自【PHP中文网】,希望能给您带来帮助,苟日新、日日新、又日新,生命不息,学习不止。

《PHP怎么对Url中的汉字进行编码和解码?(图文+视频).doc》

下载本文的Word格式文档,以方便收藏与打印。