php中使用parse_url()对网址进行解析

2014-10-18 09:57

PHP中一个好用的函数parse_url,特别方便用来做信息抓取的分析,举例子如下:

$url = 'http://www.electrictoolbox.com/php-extract-domain-from-full-url/'; $parts = parse_url($url); print_r($parts);

输出:
Array
(
    [scheme] => http
    [host] => www.electrictoolbox.com
    [path] => /php-extract-domain-from-full-url/
)

又如:

<?php $url = 'http://username:password@hostname/path?arg=value#anchor'; print_r(parse_url($url));

?>

输出:
Array
(
    [scheme] => http
    [host] => hostname
    [user] => username
    [pass] => password
    [path] => /path
    [query] => arg=value
    [fragment] => anchor
)

可以看到,可以很容易分解出一个URL的各个部,那如果要拿指定的部分出来的话也很容易,

echo parse_url($url, PHP_URL_PATH);

就是在第二个参数中,设定如下的参数:
PHP_URL_SCHEME, PHP_URL_HOST, PHP_URL_PORT, PHP_URL_USER, PHP_URL_PASS, PHP_URL_PATH, PHP_URL_QUERY or PHP_URL_FRAGMENT.

^