PHP:parse_url解析URL獲取詳細信息

最近更新時間 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
rss_feed