parse_url()函数是PHP中的内置函数, 用于通过解析返回URL的组件。它解析一个URL并返回一个包含其各个组成部分的关联数组。
语法如下:
parse_url( $url, $component = -1 )
参数:此函数接受上述和以下所述的两个参数:
- 网址:此参数保存要解析的URL。无效字符由_(下划线)代替。
- 零件:此参数指定任何组件(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。
返回值:
- 如果省略了component参数, 它将返回一个关联数组。
- 如果指定了component参数, 它将返回一个字符串。
- 如果参数的URL格式错误, 则返回false。
以下示例说明了PHP中parse_url()函数的用法:
范例1:
<?php
// Declare a variable and initialize it with URL
$url = 'http://lsbin.org/php/#basics' ;
// Use parse_url() function to parse the URL
var_dump( parse_url ( $url ));
var_dump( parse_url ( $url , PHP_URL_SCHEME));
?>
输出如下:
array(4) {
["scheme"]=>
string(4) "http"
["host"]=>
string(17) "lsbin.org"
["path"]=>
string(5) "/php/"
["fragment"]=>
string(6) "basics"
}
string(4) "http"
范例2:
<?php
// Declare a variable and initialize it with URL
$url = '//www.lsbin.org/path?php=PHP' ;
// Use parse_url() function to
// parse the URL
var_dump( parse_url ( $url ));
?>
输出如下:
array(3) {
["host"]=>
string(21) "www.lsbin.org"
["path"]=>
string(5) "/path"
["query"]=>
string(7) "php=PHP"
}
参考: http://php.net/manual/en/function.parse-url.php