PHP函数之parse_str()和parse_url()函数


parse_str()

说明:

parse_str() 函数把查询字符串解析到变量中。如果 str 是 URL 传递入的查询字符串(query string),则将它解析为变量并设置到当前作用域,并覆盖当前作用域已存在的变量。

语法

parse_str(string,array)

参数

参数 描述
string 必需。规定要解析的字符串。
array 可选。规定存储变量的数组的名称。该参数指示变量将被存储到数组中。

示例

<?php
$str = "first=value&arr[]=foobar&arr[]=baz";
parse_str($str);
echo $first;  // value
echo $arr[0]; // foo bar
echo $arr[1]; // baz
parse_str($str, $output);
echo $output['first'];  // value
echo $output['arr'][0]; // foo bar
echo $output['arr'][1]; // baz

parse_url()

说明:

解析 URL,返回其组成部分,本函数解析一个 URL 并返回一个关联数组,包含在 URL 中出现的各种组成部分。

语法

parse_url(string,$component=1)

参数

参数 描述
string 必需。规定要解析的url字符串。
option 可选的参数, PHP_URL_SCHEME、 PHP_URL_HOST、 PHP_URL_PORT、 PHP_URL_USER、 PHP_URL_PASS、 PHP_URL_PATH、 PHP_URL_QUERY 或 PHP_URL_FRAGMENT 的其中一个来获取 URL 中指定的部分的 string

如果不指定option,parse_url会返回一个关联数组,数组中可能有的键为:

  • host

  • port

  • user

  • pass

  • path

  • query - 在问号 ? 之后

  • fragment - 在散列符号 # 之后

示例

<?php
$url = "http://www.hello.com/path?arg=value#anchor";
print_r(parse_url($url));
echo parse_url($url, PHP_URL_PATH);

输出:


在路上
534 声望26 粉丝