2011-11-06 56 views
0

我想嘗試獲得一個鏈接的參數時,它的的parameteres:分離象下面這樣:獲得一個網址

http://localhost/index/test:1

我怎樣才能得到檢驗,並將其值(1)由PHP ?

在此先感謝; )

回答

0

就像發生的說,強烈建議你改變查詢的風格。 ?param1=value1&param2=param2格式是行業和技術標準。

如果您無法更改查詢樣式,則可以手動解析請求URI。 您可以通過$_SERVER['REQUEST_URI'];獲取它並使用string functions進行一些解析,例如strpos

但是,這應該是最後的手段。

+1

或者,您可以使用htaccess重寫。 – DesignerGuy

-1

如果你的意思是port: - 分隔參數,你可以使用parse_url

parse_url("http://localhost:1000/index/test", PHP_URL_PORT); 

雖然端口號應該是主機地址之後。
如果你想傳遞一些參數你應該使用& - 分隔語句的URL(就像其他人說的):

?param1=value1&param2=param2 

如果硬要導航到這個不尋常的網址,並希望獲取該1,你可以通過$_SERVER['REQUEST_URI']獲得整個網址。

0

如果您不想使用$_GET.htaccess,如其他人建議的那樣使用此選項。

<?php 
$url = "http://localhost/index/test:1"; 
$pa = parse_url($url); 
$arr = explode("/", $pa['path']); 
array_shift($arr); array_shift($arr); 
$arr = explode(":", $arr[0]); 
print_r($arr); 
?> 

輸出//

Array 
(
    [0] => test 
    [1] => 1 
) 

的元件現在存儲在數組中。

+0

Downvoter Downvoter,什麼原因? – Mob