2013-02-28 51 views
0
http://localhost/mysite/#id=98b7ee047f0a4fd6530d2538f7f929cc&com=289916 

我需要獲取'id'和'com'的值。 我必須在前面的參數中放置'#'符號,因爲我需要頁面而不刷新自身。如何從PHP中的URL請求參數值?

+0

PHP無法做到這一點,因爲它只是服務器端,而URL散列只是客戶端,並且永遠不會發送到服務器。但是,您可以使用JavaScript來獲取散列,然後通過AJAX將其發送到服務器。 – 2013-02-28 06:34:19

回答

0

試試這個:

$url = 'http://localhost/mysite/#id=98b7ee047f0a4fd6530d2538f7f929cc&com=289916'; 

echo "<pre>"; 
print_r(parse_url($url)); 

輸出:

Array 
(
    [scheme] => http 
    [host] => localhost 
    [path] => /mysite/ 
    [fragment] => id=98b7ee047f0a4fd6530d2538f7f929cc&com=289916 
) 
+0

似乎很好的解決方案,但你是如何得到的網址? – 6339 2013-02-28 06:32:54

+2

這是解析一個URL字符串,而不是獲取當前頁面的散列,這是我認爲OP所要的。 – 2013-02-28 06:33:14

+0

@crypticツ,@Deepu:我明白了這個問題,如果你對url的生成有控制權,把它作爲查詢字符串傳遞,如果你真的想要一個散列,把它放在查詢字符串的末尾:像這樣:' http://domain.com?q = querystring#hash' – 2013-02-28 06:37:44

-1

用於獲取URL,你可以使用

$url = $_SERVER['REQUEST_URI']; 

那麼你可以申請由Prasanth Bendra援引上述方法。

echo「」;的print_r(parse_url($網址));

+0

URL碎片(哈希)不可訪問服務器端。 – 2013-02-28 06:38:07

+0

這不可能通過PHP。 Ajax是@cryptic所說的解決方案。 – 6339 2013-02-28 06:45:48