PHP:parse_url解析URL获取详细信息
Lasted 2020-01-04 16:28:23
parse_url()函数解析 URL,返回其组成部分,返回一个关联数组,包含在 URL 中出现的各种组成部分。
本函数不是用来验证给定 URL 的合法性的,只是将其分解为下面列出的部分。不完整的 URL 也被接受,parse_url()会尝试尽量正确地将其解析。严重不合格的 URL,会返回 FALSE。
语法
parse_url ( string $url [, int $component = -1 ] ) : mixed
常用用法
获取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 )
注:使用前最好先通过isset()函数判断是否存在,避免出现错误。
直接获取某个值
<?php
$url = 'http://username:password@hostname/path?arg=value#anchor';
echo parse_url($url, PHP_URL_PATH);
#Output
# /path
第二个参数component值常量如下(默认-1,返回数组,包含所有信息):
- PHP_URL_SCHEME
- PHP_URL_HOST
- PHP_URL_PORT
- PHP_URL_USER
- PHP_URL_PASS
- PHP_URL_PATH
- PHP_URL_QUERY
- PHP_URL_FRAGMENT