php中使用parse_url()對網(wǎng)址進(jìn)行解析的實(shí)現(xiàn)代碼(parse_url詳解)
Jun 05, 2017 am 10:58 AMparse_url用來解析一個 URL 并返回一個關(guān)聯(lián)數(shù)組,包含在 URL 中出現(xiàn)的各種組成部分
PHP 解析 URL函數(shù): parse_url詳解
parse_url — 解析 URL,返回其組成部分
說明
array parse_url ( string $url )
本函數(shù)解析一個 URL 并返回一個關(guān)聯(lián)數(shù)組,包含在 URL 中出現(xiàn)的各種組成部分。
本函數(shù)不是用來驗(yàn)證給定 URL 的合法性的,只是將其分解為下面列出的部分。不完整的 URL 也被接受,parse_url() 會嘗試盡量正確地將其解析。
參數(shù)
url
要解析的 URL
返回值
對嚴(yán)重不合格的 URL,parse_url() 可能會返回 FALSE 并發(fā)出 E_WARNING。否則會返回一個關(guān)聯(lián)數(shù)組,其組成部分為(至少有一個):
scheme – 如 http
host
port
user
pass
path
query – 在問號 ? 之后
fragment – 在散列符號 # 之后
范例
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 )
常常我們會傳送一大串網(wǎng)址,然后要解析的話,只能不斷地去切token來解析。但是在php中,一定要學(xué)會使用前人所寫過的函式,這樣開發(fā)速度才會快別人一截。當(dāng)然,要解析網(wǎng)址的話,就得去找相關(guān)的指令,而今天要介紹的,就是php中的parse_url這個函式。
這個函式主要是用來解析網(wǎng)址,而首先先看一下這個函式原型,其官方描述如下:
mixed parse_url ( string $url [, int $component= -1 ] )
而php官方舉了一個例子,而我將他擴(kuò)充如下,以方便講解。
代碼如下:
<?php $url = 'http://username:password@hostname/path?arg1=value1&arg2=value2#anchor'; print_r(parse_url($url)); ?>
首先,先看一下這個程式的輸出結(jié)果
Array ( [scheme] => http [host] => hostname [user] => username [pass] => password [path] => /path [query] => arg1=value1&arg2=value2 [fragment] => anchor )
其中,scheme是指他走的路線,而host則是站臺網(wǎng)址,user則是使用者名稱,pass則是密碼,path則是路徑,query則是參數(shù),fragment則是錨點(diǎn)。
而在「$component」的部份,則是有以下的參數(shù)可供傳遞。
PHP_URL_SCHEME
PHP_URL_HOST
PHP_URL_USER
PHP_URL_PASS
PHP_URL_PATH
PHP_URL_QUERY
PHP_URL_FRAGMENT
而這幾個參數(shù)則分別代表了Array中的scheme、host、user、pass、path、query和fragment。
同樣,舉例來說,如果使用PHP_URL_PATH和PHP_URL_QUERY來說,以下為他的示范。
代碼如下:
<?php $url = 'http://username:password@hostname/path?arg1=value1&arg2=value2#anchor'; echo nl2br(parse_url($url, PHP_URL_PATH)."\n"); echo nl2br(parse_url($url, PHP_URL_QUERY)."\n"); ?>
而輸出結(jié)果將如下:
/path
arg1=value1&arg2=value2

熱AI工具

Undress AI Tool
免費(fèi)脫衣圖片

Undresser.AI Undress
人工智慧驅(qū)動的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強(qiáng)大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

如果想要在steam裡查閱一些相關(guān)的資訊或和朋友分享一些網(wǎng)站鏈接,要怎麼操作呢? steam能輸入網(wǎng)址嗎?當(dāng)然可以的,下面小編就來教大家如何在Steam內(nèi)開啟網(wǎng)址的方法?! 【唧w方法: 1、首先,我們打開steam?! ?、點(diǎn)選設(shè)定選項(xiàng)?! ?、然後切換到介面標(biāo)籤?! ?、勾選顯示網(wǎng)址列。 5、然後再網(wǎng)址列內(nèi)輸入網(wǎng)址即可使用瀏覽器。

iBatis和MyBatis:區(qū)別和優(yōu)勢解析導(dǎo)語:在Java開發(fā)中,持久化是一個常見的需求,而iBatis和MyBatis是兩個廣泛使用的持久化框架。雖然它們有很多相似之處,但也有一些關(guān)鍵的區(qū)別和優(yōu)勢。本文將透過詳細(xì)分析這兩個框架的特性、用法和範(fàn)例程式碼,為讀者提供更全面的了解。一、iBatis特性:iBatis是目前較老舊的持久化框架,它使用SQL映射文件

Oracle錯誤3114詳解:如何快速解決,需要具體程式碼範(fàn)例在Oracle資料庫開發(fā)與管理過程中,我們常常會遇到各種各樣的錯誤,其中錯誤3114是比較常見的一個問題。錯誤3114通常表示資料庫連線出現(xiàn)問題,可能是網(wǎng)路故障、資料庫服務(wù)停止、或連接字串設(shè)定不正確等原因?qū)е碌?。本文將詳?xì)解釋錯誤3114的產(chǎn)生原因,以及如何快速解決這個問題,並附上具體的程式碼

深入解析HTTP狀態(tài)碼460的作用和應(yīng)用場景HTTP狀態(tài)碼是Web開發(fā)中非常重要的一部分,用來表示客戶端和伺服器之間的通訊狀態(tài)。其中,HTTP狀態(tài)碼460是較為特殊的狀態(tài)碼,本文將深入解析它的作用與應(yīng)用場景。 HTTP狀態(tài)碼460的定義HTTP狀態(tài)碼460的具體定義是"ClientClosedRequest",意為客戶端關(guān)閉請求。此狀態(tài)碼主要用於表示

Wormhole在區(qū)塊鏈互通性方面處於領(lǐng)先地位,專注於創(chuàng)建有彈性、面向未來的去中心化系統(tǒng),優(yōu)先考慮所有權(quán)、控制權(quán)和無需許可的創(chuàng)新。這個願景的基礎(chǔ)是對技術(shù)專業(yè)知識、道德原則和社群一致性的承諾,旨在以簡單、清晰和廣泛的多鏈解決方案套件重新定義互通性格局。隨著零知識證明、擴(kuò)容方案和功能豐富的Token標(biāo)準(zhǔn)的興起,區(qū)塊鏈變得更加強(qiáng)大,而互通性也變得越來越重要。在這個不斷創(chuàng)新的應(yīng)用程式環(huán)境中,新穎的治理系統(tǒng)和實(shí)用功能為整個網(wǎng)路的資產(chǎn)帶來了前所未有的機(jī)會。協(xié)議建構(gòu)者現(xiàn)在正在努力思考如何在這個新興的多鏈

由於篇幅限制,以下是一個簡短的文章:Apache2是常用的Web伺服器軟體,而PHP是廣泛使用的伺服器端腳本語言。在建置網(wǎng)站過程中,有時會遇到Apache2無法正確解析PHP檔案的問題,導(dǎo)致PHP程式碼無法執(zhí)行。這種問題通常是因?yàn)锳pache2沒有正確配置PHP模組,或是PHP模組與Apache2的版本不相容所導(dǎo)致的。解決這個問題的方法一般有兩種,一種是

【PHP中點(diǎn)的意義和用法解析】在PHP中,中點(diǎn)(.)是常用的運(yùn)算符,用來連接兩個字串或物件的屬性或方法。在本文中,我們將深入探討PHP中點(diǎn)的意義和用法,並透過具體的程式碼範(fàn)例加以說明。 1.連接字串中點(diǎn)運(yùn)算子.在PHP中最常見的用法是連接兩個字串。透過將.放置在兩個字串之間,可以將它們拼接在一起,形成一個新的字串。 $string1=&qu

C語言中指數(shù)函數(shù)的詳細(xì)解析與範(fàn)例引言:指數(shù)函數(shù)是一種常見的數(shù)學(xué)函數(shù),在C語言中也有對應(yīng)的指數(shù)函數(shù)庫函數(shù)可以使用。本文將詳細(xì)解析C語言中指數(shù)函數(shù)的使用方法,包括函數(shù)的原型、參數(shù)、返回值等;並給出具體的程式碼範(fàn)例,以便讀者能更好地理解並運(yùn)用指數(shù)函數(shù)。正文:C語言中的指數(shù)函數(shù)庫函數(shù)math.h中包含了許多與指數(shù)相關(guān)的函數(shù),其中最常用的是exp函數(shù)。 exp函數(shù)的原型如
