2011-08-13 42 views
1

希望我可以正確解釋這個...PHP:運行基於URL的查詢?

我有一個搜索引擎腳本,它運行PHP並使用來自各個地方的API。我希望能夠根據URL生成查詢結果($ q)。

例如如果用戶轉到domain.com/stackoverflow,我希望網站自動生成一個查詢,以運行「stackoverflow」搜索。即$ q = stackoverflow。

我想這是PHP的頭函數的反面,而不是將信息放入URL欄中,我想將信息提取出來。

我意識到可能會對.htaccess進行一些編輯來完成這項工作,但這有可能嗎?這也意味着能夠處理與網站上可能已有的任何內容的衝突,例如,我需要定義domain.com/login是保留的,並且不對其運行查詢搜索等。

回答

2

這是通過$_GET陣列完成的。

想象一下這是您的網址:http://www.website.com/?foo=bar然後$_GET['foo']bar

如果你想要做的事就像domain.com/stackoverflow你將需要使用的htaccess重寫這個URL類似domain.com/?domain=stackoverflow,然後你可以通過$_GET['domain']訪問它。

0

有幾種方法可以做你想做的事。

  1. 您應該使用.htaccess to ModRewrite它在某種程度上使example.com/?q=whatver將成爲example.com/whatever,然後使用PHP的$_GET superglobal。正常獲取信息。
  2. 您可以使用PHP的parse_url() function,獲取路徑並使用它($parsed_url['path'])。

祝你好運:)