2014-09-06 63 views
0

我想借此從動態網頁生成的URL中的PHP變量 假設有在URL如何把當前的網址變成一個php變量?

www.example.com/new/id=2

我一個ADRESS想要將部件new/id = 2放入php變量中。

同時該變量是能夠從

www.example.com/new/id=2 &標題採取新/ ID = 2 &標題= ARTICLE = ARTICLE

是否有任何可以完成這項工作的技巧?

+0

要求對谷歌 – 2014-09-06 17:16:00

+0

問題和研究時,請更具體作爲一般性評論:根據使用情況,這可能是危險的,因爲攻擊者可以注入任意代碼(HTML/JavaScript)。例如。通過追加'''?「><」'''或'''/「><」'「(直接在.php結尾)。 – MrTux 2014-09-06 17:38:31

+0

@KhanShahrukh請做一件事避免評論「\t 請在google上提問和研究時更具體一些」因爲很多人都在說相同的評論並嘗試不同的東西! – Neenu 2014-09-07 10:48:31

回答

2

試試這個

$full_url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; 
+0

這不適用於https或不同端口,也不包含查詢字符串 – MrTux 2014-09-06 17:15:13

0

看$ _ SERVER數組

print_r($_SERVER); 
0

可以使用$_SERVER全局得到這個信息。 $_SERVER["REQUEST_URI"]應該給你new/id=2和完整(GET)請求URI。

ETA:我的不好。 MrTux是正確的...您需要連接$_SERVER["QUERY_STRING"]以獲取URI和查詢。所以試試這個:

$uri_query = $_SERVER["REQUEST_URI"].$_SERVER["QUERY_STRING"]; 
+0

有關解決MrTux對user3659034的答案的有效評論的更完整實現,請參見[this cheatsheet](http://webcheatsheet.com/php/) get_current_page_url.php)。 – Joseph8th 2014-09-06 17:21:13

+0

您仍可能需要添加「?」在'''之前。$ _ SERVER [「QUERY_STRING」]'''。 – MrTux 2014-09-06 17:31:54

+0

MrTux再次改正!天啊。我試圖獲得信貸嗎? ;) – Joseph8th 2014-09-06 17:35:26

0

使用php的parse_url函數。

$url = '//www.example.com/path?googleguy=googley'; 

$query=parse_url($url)); 

var_dump($query); 

上面的例子將輸出

array(3) { 
    ["host"]=> 
    string(15) "www.example.com" 
    ["path"]=> 
    string(5) "/path" 
    ["query"]=> 
    string(17) "googleguy=googley" 
} 

這意味着你將在$查詢[「查詢」]讓你需要的值