首页 > 语言 > PHP > 正文

php中url处理函数总结

2024-09-04 11:48:16
字体:
来源:转载
供稿:网友

在php中url处理函数有很多,如有:http_build_query,compact,urldecode、urlencode,parse_url,rawurldecode等等函数。

http_build_query

(PHP 5) http_build_query — 生成 URL-encode 之后的请求字符串,实例代码如下:

  1. <?php 
  2. $data = array('foo'=>'bar'
  3. 'baz'=>'boom'
  4. 'cow'=>'milk'
  5. 'php'=>'hypertext processor');echo http_build_query($data); // foo=bar&baz=boom&cow=milk&php=hypertext+processor 
  6. ?> 

compact

array compact ( mixed $varname [, mixed $... ] )

(PHP 4,PHP 5) compact — 建立一个数组,包括变量名和它们的值,实例代码如下:

  1. <?php 
  2. $city  = "San Francisco"
  3. $state = "CA"
  4. $event = "SIGGRAPH"
  5. $result = compact("city""state""event"); 
  6. // array('city'=>'"San Francisco"','state'=>'CA','event' => "SIGGRAPH") 
  7. ?>  
  8. ------------- 
  9. $qs=compact('province','city','name'); 
  10. foreach($qs as $key => $value){ 
  11.     if(!$value){ 
  12.         unset($qs[$key]); 
  13.     } 
  14. $url='something/search/?'.http_build_query($qs) ; 

urldecode、urlencode

下面来看介绍与实例。

parse_url($str url);

把url转换成数组,实例代码如下:

  1. */ 
  2. print_r(parse_url("www.Vevb.com"));       //解析url并输出返回数组 
  3. /* 

url 专用格式字符串还原成普通字符串。

语法: string rawurldecode(string str);

返回值: 字符串

函数种类: 编码处理 

内容说明

本函数将字符串解码,从 url 的字符串专用格式解成普通字符串,详细的编码解码信息及规格文件可以参考 rfc 1738,实例代码如下:

  1. */ 
  2. echo rawurldecode('foo%20bar%40baz');      //输出foo bar@baz 
  3. /* 
  4. string rawurlencode ( string str ) 

返回字符串,此字符串中除了 -_,之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,这是在 rfc 1738 中描述的编码,是为了保护原义字符以免其被解释为特殊的 url 定界符,同时保护 url 格式以免其被传输媒体(像一些邮件系统)使用字符转换时弄乱,例如,如果你想在 ftp 的 url 中包含密码,实例代码如下:

  1. */ 
  2. $str="http://www.Vevb.com";       //定义字符串 
  3. $result=rawurlencode($str);      //对指定字符串编码 
  4. echo $result
  5. /* 
  6. urldecode() 
  7. url解码 
  8. */  //输出结果 
  9. $str="http%3a%2f%2fwww.Vevb.com"
  10. $result=urldecode($str); 
  11. echo $result
  12. /* 

urlencode()

url编码

  1. */ 
  2. $str="http://www.Vevb.net";       //定义字符串 
  3. $result=urlencode($str);       //对指定字符串编码 
  4. echo $result;         //输出结果 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表