PHP 手册
上一页 |  | 下一页

# parse_url

(PHP 3, PHP 4, PHP 5)

parse_url -- 解析 URL，返回其组成部分

## 说明

array parse_url ( string url )

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

本函数不是用来验证给定 URL 的合法性的，只是将其分解为下面列出的部分。不完整的 URL 也被接受，parse_url() 会尝试尽量正确地将其解析。

## 参数

`url`

  要解析的 URL

## 返回值

对严重不合格的 URL，parse_url() 可能会返回 `FALSE` 并发出 `E_WARNING`。否则会返回一个关联数组，其组成部分为（至少有一个）：

- `scheme` - 如 http

- `host`

- `port`

- `user`

- `pass`

- `path`

- `query` - 在问号 `?` 之后

- `fragment` - 在散列符号 `#` 之后

## 范例

例 1. parse_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。

> 注意: parse_url() 是专门用来解析 URL 而不是 URI 的。不过为遵从 PHP 向后兼容的需要有个例外，对 file:// 协议允许三个斜线（file:///...）。其它任何协议都不能这样。

## 参见

pathinfo()
parse_str()
dirname()
basename()

上一页 | 起始页 | 下一页
http_build_query | 上一级 | rawurldecode