2013-04-06 39 views
3

我想在PHP5.4(用於教育目的)中編寫一個小的RESTful Service API。因此,我需要分析服務被調用的URL。

我想這樣做的方式是從$_SERVER['PATH_INFO']中去掉URL路徑並將它們放到數組中。假設路徑信息包含/contacts/14295/。將這兩條路徑放入像下面這樣的數組的正確方法是什麼?

array(2) { 
[0]=> 
string(8) "contacts" 
[1]=> 
string(5) "14295" 
} 

我發現至少有兩種方法中的路徑信息字符串分割到一個數組,但兩種方式導致與兩個以上項目的數組。

我發現的第一種方式是explode功能,其與後空字符串返回一個陣列(表示第一和最後一個陣列條目包含一個空字符串):

explode('/', $_SERVER['PATH_INFO']); 

然後我試圖它返回使preg_split功能它包含每個斜槓(/)項的數組:

preg_split('//', $_SERVER['PATH_INFO']); 

兩種變體都非常不方便,我從URL獲取的路徑。我想知道是否沒有更好的方法。

回答

3

從數組的開始和結尾修剪「/」?

$array = explode('/', trim($_SERVER['PATH_INFO'], '/')); 
+1

謝謝。這是我所尋找的。 – Thomas 2013-04-06 06:14:17