我有以下URL如何從HTTP查詢字符串
http://www.example.com/node/add/forum/3?gids[]=13
我想從我的模塊中獲得的價值13
讀取參數。
我試着
$_GET['gid[]']
與
$_GET['gids%5B%5D']
,但我總是null
。
我該怎麼做? 由於
我有以下URL如何從HTTP查詢字符串
http://www.example.com/node/add/forum/3?gids[]=13
我想從我的模塊中獲得的價值13
讀取參數。
我試着
$_GET['gid[]']
與
$_GET['gids%5B%5D']
,但我總是null
。
我該怎麼做? 由於
假定URL被正確編碼(導報%5B%5D),這就是在陣列中的唯一元件,則該第一元件的中的GID的內容將是$_GET['gids'][0]
。
在PHP 5.2 +,使用filter_input()
讀取GET和POST變量:
$gids = filter_input(INPUT_GET, 'gids', FILTER_DEFAULT, FILTER_FORCE_ARRAY | FILTER_FORCE_ARRAY);
謝謝!這在未來可能會有用。對於我目前的目的,[喬的回答](http://stackoverflow.com/questions/6126795/how-to-read-parameter-from-the-http-query-string/6126877#6126877)做了這項工作。 – MarcoS 2011-05-27 06:00:00
由於這是標有關鍵字「Drupal的」,並出現在谷歌搜索。 Drupal 7的做法很簡單,就是使用drupal_get_query_parameters()。這將一次返回查詢字符串中的所有變量和值的關聯數組。
通過使用此功能,當您存儲來自URL的信息時,它已經被XSS和SQLi攻擊消毒。
我認爲這應該是公認的答案,因爲這是Drupal的方式。 – ionize 2017-01-27 01:52:39
您是否嘗試過print_r($ _ GET ['gids']); ?或回聲$ _GET ['gids'] [1]; ? – Chumillas 2011-05-25 15:20:59
...或者更一般地說,print_r($ _ REQUEST),因爲OP不確定如何命名該查詢參數。在這種情況下,Joe的答案如下:它們被自動放入一個名爲'gids'的數組中。 – Hound 2011-05-25 15:25:39
@Chumillas:我沒有。但[喬的回答](http://stackoverflow.com/questions/6126795/how-to-read-parameter-from-the-http-query-string/6126877#6126877)把我放在正確的方向。謝謝。 – MarcoS 2011-05-25 15:29:11