2013-06-25 65 views
1

當參數名稱後面[][keyname] PHP自動創建$_GET陣列。訪問多個GET參數沒有括號符號

然而,對於公共API我很想有沒有在URL中明確的支架相同的行爲。例如,查詢

?foo=bar&foo=baz 

應導致$_GET(或類似)是這樣的:

$_GET["foo"] == array("bar", "baz"); 

是否有可能輕鬆地獲得在PHP這種行爲?即,不解析$_SERVER['QUERY_STRING']自己或將其送入parse_str()前preg_replacing =在查詢字符串[]=

+0

沒有不可能的。 – PeeHaa

+0

對不起,確實,自己解析它會是。但它仍然只是一個正則表達式和一個循環。 – mario

+0

在url中序列化數組? – 2013-06-25 20:14:01

回答

0

你可以嘗試這樣的事:

foreach($_GET as $slug => $value) { 
#whatever you want to do, for example 
print $_GET[$slug]; 
} 
+0

這正是一次打印'baz'。不幸的是,「酒吧」完全被遮蔽了。 – Boldewyn

+0

你爲什麼不嘗試一下呢?富[1] =酒吧和富[2] =巴茲等。那麼$ _GET [「foo」]將是一個數組,因此您可以在代碼中使用它。 –

+0

_I_可以。但用例是一個API,我希望API的用戶儘可能簡單地使用它。這是API的URL的簡單化妝品。 – Boldewyn