如何从HTTP查询字符串中读取参数

时间:2011-05-25 15:16:50

标签: drupal query-string

我有以下网址

http://www.example.com/node/add/forum/3?gids[]=13

我想从我的模块中获取值13

我试过

$_GET['gid[]']

$_GET['gids%5B%5D']

但我总是得到null

我该怎么做? 感谢

3 个答案:

答案 0 :(得分:7)

假设URL已正确编码(gids%5B%5D)并且这是数组中唯一的元素,那么gids中第一个元素的内容将位于$_GET['gids'][0]中。

答案 1 :(得分:4)

因为这是用关键字" drupal"标记的。并出现在谷歌搜索上。 Drupal 7这样做的方法很简单,就是使用drupal_get_query_parameters()。这将同时返回查询字符串中所有变量和值的关联数组。

通过使用此功能,当您存储来自URL的信息时,它已针对XSS和SQLi攻击进行了清理。

答案 2 :(得分:3)

在PHP 5.2+中,使用filter_input()来读取GET和POST变量:

$gids = filter_input(INPUT_GET, 'gids', FILTER_DEFAULT, FILTER_FORCE_ARRAY | FILTER_FORCE_ARRAY);