簡體   English   中英

PHP解析網址

[英]PHP Parsing URL

好的,我正在嘗試從數據庫中獲取要根據URL提取的數據。

我有一個數據庫,其中保存着有關各個客戶網站的一些公告的數據。 這些網站位於我網站上的各個目錄中。 (即www.domain.com/website1/index.html、www.domain.com/website2/index.html、www.domain.com/website3/index.html等。)在數據庫中,我有一列具有每個客戶的“歸檔名稱”(又名目錄名稱-網站1,網站2,網站3等)。 我想嘗試並僅顯示數據庫中“ domain.www.domain.com/website1/index.html”域的“ fileingName = website1”的行。 希望這是有道理的。 我基本上是想弄清楚如何在單個頁面之間連接點並僅提取特定的客戶記錄。 有什么想法嗎??

謝謝!

根據數據集的大小,預處理URL並存儲需要匹配的各個組件可能會變得“便宜”。 例如,為host / dir / querystring創建額外的字段,並將其單獨存儲,而不是整體式絕對URL。 這比嘗試進行子字符串匹配要安全得多,尤其是如果您要匹配的子字符串可能是多個不同網址的一部分(“ abc”是“ abc.com”和“ abctv.com”的一部分)。

最好的選擇是將這些標識符單獨存儲在數據庫中(例如1 = website1,2 = website 2),並相應地命名目錄。 然后,在您的.htaccess文件中,操縱URL使其看起來像$_GET變量是目錄名,並將其替換為數據庫中的匹配名。 使用RewriteRule規則執行此操作。 這是在保持相同URL結構的同時實現此目標的最絕對方法。

編輯:糟糕,沒有意識到這個線程有多老。

在查詢中使用like語句:

SELECT * FROM `sites` WHERE `url` LIKE "%/website1/%";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM