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所示。
共有条评论 网友评论