在php中url处理函数有很多,如有:http_build_query,compact,urldecode、urlencode,parse_url,rawurldecode等等函数。
http_build_query
(PHP 5) http_build_query — 生成 URL-encode 之后的请求字符串
代码如下 | 复制代码 |
$data = array('foo'=>'bar', 'baz'=>'boom', 'cow'=>'milk', 'php'=>'hypertext processor');echo http_build_query($data); // foo=bar&baz=boom&cow=milk&php=hypertext processor ?> compact array compact ( mixed $varname [, mixed $... ] ) (PHP 4, PHP 5) compact — 建立一个数组,包括变量名和它们的值 代码如下 | 复制代码 | $city = "San Francisco"; $state = "CA"; $event = "SIGGRAPH"; $result = compact("city", "state", "event"); // array('city'=>'"San Francisco"','state'=>'CA','event' => "SIGGRAPH") ?> ------------- $qs=compact('province','city','name'); foreach($qs as $key => $value){ if(!$value){ unset($qs[$key]); } } $url='something/search/?'.http_build_query($qs) ; urldecode、urlencode下面来看介绍与实例。 parse_url($str url); 把url转换成数组 代码如下 | 复制代码 | */ print_r(parse_url("www.jquerycn.cn")); //解析url并输出返回数组 /* url 专用格式字符串还原成普通字符串。 语法: string rawurldecode(string str); 返回值: 字符串 函数种类: 编码处理 内容说明 本函数将字符串解码。从 url 的字符串专用格式解成普通字符串。详细的编码解码信息及规格文件可以参考 rfc 1738。 代码如下 | 复制代码 | */ echo rawurldecode('foo bar@baz'); //输出foo bar@baz /* string rawurlencode ( string str ) 返回字符串,此字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数。这是在 rfc 1738 中描述的编码,是为了保护原义字符以免其被解释为特殊的 url 定界符,同时保护 url 格式以免其被传输媒体(像一些邮件系统)使用字符转换时弄乱。例如,如果你想在 ftp 的 url 中包含密码: 代码如下 | 复制代码 | */ $str="http://www.jquerycn.cn"; //定义字符串 $result=rawurlencode($str); //对指定字符串编码 echo $result; /* urldecode() url解码 */ //输出结果 $str="http://www.jquerycn.cn"; $result=urldecode($str); echo $result; /* urlencode() url编码 */ $str="http://www.jquerycn.cn"; //定义字符串 $result=urlencode($str); //对指定字符串编码 echo $result; //输出结果 |
|
|
|
|