首頁 > 後端開發 > php教程 > PHP 中如何在沒有查詢字串的情況下有效率地提取 URL 路徑?

PHP 中如何在沒有查詢字串的情況下有效率地提取 URL 路徑?

Susan Sarandon
發布: 2024-12-01 21:33:10
原創
328 人瀏覽過

How Can I Efficiently Extract a URL Path Without the Query String in PHP?

在沒有查詢字串的情況下提取 URL 路徑

在 Web 開發中,通常需要使用 URL 並操作其元件。一個常見的場景是需要檢索不帶查詢字串的 URL 路徑,也稱為 URL 參數清單。

問題:

處理表單中的URL 時對於“www.example.com/myurl.html?unwantedthngs”,您可能需要刪除問號(?) 及其後面的所有內容以獲得乾淨的URL路徑,例如"www.example.com/myurl.html."

解決方案:

要完成此任務,您可以採用多種技術,例如使用PHP 的strtok()功能。 strtok() 是一個功能強大的函數,它允許您根據指定的分隔符號對字串進行標記。

範例:

$url = strtok($_SERVER["REQUEST_URI"], '?');
登入後複製

在此範例中,我們使用strtok () 將$_SERVER["REQUEST_URI"] 拆分為兩個子字串:第一個子字串包含直到第一次出現為止的URL 路徑問號的第二個子字串(我們丟棄)包含查詢字串。

替代技術:

雖然strtok() 是一種簡潔而有效的方法,提取URL 路徑,您還可以探索其他技術well:

  • explode(): 您可以使用explode() 根據問號分隔符號將URL 拆分為數組。然而,分解整個 URL 可能並不總是必要的,尤其是當您只需要 URL 路徑時。
  • strstr() with true: 透過將 strstr() 的第三個參數設為 true ,您可以獲得直到第一次出現問號的 URL 路徑。不過這個方法不如strtok()或explode()可靠。
  • substr()和strrpos():可以使用substr()從開頭提取子字串URL 的長度到問號的最後一個位置,使用 strrpos() 決定。然而,這種方法並不完全可靠,特別是在處理沒有查詢字串的 URL 時。

結論:

strtok() 是一種強大且可靠的技術提取不帶查詢字串的 URL 路徑。它提供了一種簡潔有效的方法來在 PHP 程式碼中完成此任務。

以上是PHP 中如何在沒有查詢字串的情況下有效率地提取 URL 路徑?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板