parse_url 函数是 PHP 中的一个内置函数,用于解析 URL 并返回其组成部分。
下面是 parse_url 函数的语法:
parse_url(string $url, int $component = -1): mixed
参数说明:
$url:要解析的 URL 字符串。$component:可选参数,指定要返回的 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。如果省略或设置为 -1,则返回完整的 URL 数组。返回值:
$component 参数指定为特定的 URL 组成部分时,返回该组成部分的字符串值。$component 参数设置为 -1 或省略时,返回一个关联数组,包含 URL 的所有组成部分。下面是一个示例,演示如何使用 parse_url 函数解析 URL:
$url = "https://username:password@www.example.com:8080/path?query=param#fragment";
// 解析完整的 URL 数组
$parts = parse_url($url);
print_r($parts);
// 解析特定的 URL 组成部分
$scheme = parse_url($url, PHP_URL_SCHEME);
$host = parse_url($url, PHP_URL_HOST);
$port = parse_url($url, PHP_URL_PORT);
$user = parse_url($url, PHP_URL_USER);
$pass = parse_url($url, PHP_URL_PASS);
$path = parse_url($url, PHP_URL_PATH);
$query = parse_url($url, PHP_URL_QUERY);
$fragment = parse_url($url, PHP_URL_FRAGMENT);
echo "Scheme: $scheme\n";
echo "Host: $host\n";
echo "Port: $port\n";
echo "User: $user\n";
echo "Pass: $pass\n";
echo "Path: $path\n";
echo "Query: $query\n";
echo "Fragment: $fragment\n";
输出:
Array
(
[scheme] => https
[host] => www.example.com
[port] => 8080
[user] => username
[pass] => password
[path] => /path
[query] => query=param
[fragment] => fragment
)
Scheme: https
Host: www.example.com
Port: 8080
User: username
Pass: password
Path: /path
Query: query=param
Fragment: fragment
@漏刻有时