如何使用$ _REQUEST ['variable name']获取URL变量数组

时间:2013-10-26 06:46:06

标签: php url

我正在使用URL来获取存储/显示在URL中的数据。我使用$ _REQUEST ['v_name']获取变量的所有值,但如果URL中有数组,我该如何检索该值。

例如:

WWW.example.com/rooms?&hid=213421&type=E

我得到了值hid并使用

键入
$hid=$_REQUEST['hid'];

但在URL中:

 WWW.example.com/rooms?&rooms=2&rooms[0].adults=2&rooms[0].children=0&rooms[1].adults=2&rooms[1].children=0

如何检索每个房间内成人和儿童的价值。

请帮忙。 在此先感谢

2 个答案:

答案 0 :(得分:1)

你也可以尝试这样的事情,因为你的原始$_REQUEST大部分都不是一个数组(因为每个键/值对之间有.):

<?php
$original_string = rawurldecode($_SERVER["QUERY_STRING"]);
$original_string_split = preg_split('/&/', $original_string);
$rooms = array();
foreach ($original_string_split as $split_one) {
  $splits_two[] = preg_split('/\./', $split_one);
}
foreach ($splits_two as $split_two) {
  if (isset($split_two[0]) && isset($split_two[1])) {
    $split_three = preg_split('/=/', $split_two[1]);
    if (isset($split_three[0]) && isset($split_three[1])) {
      $rooms[$split_two[0]][$split_three[0]] = $split_three[1];
    }
  }
}
// Print the output if you want:
print '<pre>' . print_r($rooms, 1)  . '</pre>';

答案 1 :(得分:0)

$valuse = $_GET;

foreach ($valuse as $key=>$value)
{
     echo $key .'='. $value. '<br/>';
}