文章教程

8.1.2对URL进行编码

9/17/2020 9:26:54 PM 人评论 次浏览

8.1.2 对URL进行编码

PHP提供函数urlencode对URL进行编码,该函数语法如下所示。


string urlencode(string$str);


函数urlencode()接受一个字符串参数作为输入,返回值也是一个字符串,返回值字符串中所有的非字母和数字字符变成一个百分号(%)和一个两位的十六进制数,如字符串“&”会被转换成“%26”。

说明 空格则会被转换成一个加号(+)。另外,函数urlencode()不会对-、_和.(英文句点)符号做转换。

代码8-1演示了如何将一个URL地址编码后输出。

代码8-1 对URL进行编码8-1.php


01 <?php

02 $url="http://localhost.com/?user=abcd&code=1234";//定义url变量

03 $decode_url=urlencode($url);//对url进行编码

04

05 echo"编码前,URL为:<br/>".$url."<br/>";

06 echo"<br/>";

07 echo"<hr>";

08 echo"<br/>";

09

10 echo"编码后,URL为:<br/>".$decode_url;

11 ?>


【代码解析】第2行定义一个URL的地址变量$url,从代码中可以看出,用户名和密码都被暴露在外面。第3行通过urlencode()函数对地址进行编码,这样就不能轻易地读取用户名和密码了。这段程序在页面输出的结果如图8-1所示。

图 8-1 对URL编码

教程类别