从查询字符串中提取数据

时间:2012-10-13 10:28:20

标签: php string split query-string

我希望能够看到用户执行的操作类型以及产品。下面你可以看到查询字符串是什么样的,我想要的是提取(在这种情况下)“changeInfo”和“2”。

下面是我的用于拆分查询字符串的代码,该代码有效,但我显然“拆分”已弃用,不应使用。那么,我可以使用什么呢?提取这些值的最佳方法是什么?

//$queryString = index.php?action=changeInfo&id=2

list($a, $action, $b, $id) = split('[=&]', $queryString);

echo "$a, $action, $b, $id";    //action, changeInfo, id, 2

2 个答案:

答案 0 :(得分:2)

您可以使用

$quertString = parse_url("index.php?action=changeInfo&id=2",PHP_URL_QUERY);
parse_str("action=changeInfo&id=2",$quertString);
var_dump($quertString);

输出

array
  'action' => string 'changeInfo' (length=10)
  'id' => string '2' (length=1)

如果你想进一步打破它

list($a,$b) = array_keys($quertString);
list($action,$id) = array_values($quertString);


var_dump($a, $action, $b, $id);

答案 1 :(得分:1)

split()被explode()取代,如果派上用场的话。