URL 函數

提取函數

URL 提取函數從 HTTP URL(或任何符合 RFC 2396 的有效 URI)提取組件。支援以下語法

[protocol:][//host[:port]][path][?query][#fragment]

提取的組件不包含 URI 語法分隔符號,例如 :?

url_extract_fragment(url) -> varchar()

url 傳回片段識別碼。

url_extract_host(url) -> varchar()

url 傳回主機。

url_extract_parameter(url, name) -> varchar()

url 傳回名為 name 的第一個查詢字串參數的值。參數提取會以 RFC 1866#section-8.2.1 所指定的一般方式處理。

url_extract_path(url) -> varchar()

url 傳回路徑。

url_extract_port(url) -> bigint()

url 傳回連接埠號碼。

url_extract_protocol(url) -> varchar()

url 傳回協定。

url_extract_query(url) -> varchar()

url 傳回查詢字串。

編碼函數

url_encode(value) -> varchar()

逸出 value,方法是將其編碼,以便安全地包含在 URL 查詢參數名稱和值中

  • 英數字元不進行編碼。

  • 字元 .-*_ 不進行編碼。

  • ASCII 空格字元編碼為 +

  • 所有其他字元都會轉換為 UTF-8,並且位元組會編碼為字串 %XX,其中 XX 是 UTF-8 位元組的大寫十六進位值。

url_decode(value) -> varchar()

取消逸出 URL 編碼的 value。此函數是 url_encode() 的反函數。