PHP函式之parse_str()和parse_url()函式

在路上發表於2019-02-16

PHP函式之parse_str()和parse_url()函式


parse_str()

說明:

parse_str() 函式把查詢字串解析到變數中。如果 str 是 URL 傳遞入的查詢字串(query string),則將它解析為變數並設定到當前作用域,並覆蓋當前作用域已存在的變數。

語法

parse_str(string,array)

引數

引數 描述
string 必需。規定要解析的字串。
array 可選。規定儲存變數的陣列的名稱。該引數指示變數將被儲存到陣列中。

示例

<?php
$str = "first=value&arr[]=foobar&arr[]=baz";
parse_str($str);
echo $first;  // value
echo $arr[0]; // foo bar
echo $arr[1]; // baz
parse_str($str, $output);
echo $output[`first`];  // value
echo $output[`arr`][0]; // foo bar
echo $output[`arr`][1]; // baz

parse_url()

說明:

解析 URL,返回其組成部分,本函式解析一個 URL 並返回一個關聯陣列,包含在 URL 中出現的各種組成部分。

語法

parse_url(string,$component=1)

引數

引數 描述
string 必需。規定要解析的url字串。
option 可選的引數, PHP_URL_SCHEME、 PHP_URL_HOST、 PHP_URL_PORT、 PHP_URL_USER、 PHP_URL_PASS、 PHP_URL_PATH、 PHP_URL_QUERY 或 PHP_URL_FRAGMENT 的其中一個來獲取 URL 中指定的部分的 string

如果不指定option,parse_url會返回一個關聯陣列,陣列中可能有的鍵為:

  • host

  • port

  • user

  • pass

  • path

  • query – 在問號 ? 之後

  • fragment – 在雜湊符號 # 之後

示例

<?php
$url = "http://www.hello.com/path?arg=value#anchor";
print_r(parse_url($url));
echo parse_url($url, PHP_URL_PATH);

輸出:

相關文章