使用$ _GET变量来确定要引用的数组中的哪个索引

时间:2011-07-25 02:02:11

标签: php arrays get

我通过$_GET['value']获取数据,我希望该值代表数组的变量。

我正在构建一个带有3个选项的下拉菜单。

我想在数组中搜索匹配项。

所以如果$_GET['value'] == 'name' 然后我想在我的数组中搜索'name'并使用该值作为发送到我的查询的数据。

排序依据:

<select name='1' value='name'>Name</select>
<select name='1' value='manufacturer'>Brand</select>

因此,当php获取选择菜单的值时,我想对该名称进行数组搜索,并使用其值来表示要发送到我的查询的变量。

3 个答案:

答案 0 :(得分:1)

确定$_GET中收到的值是否在您的数组中,然后通过索引检索它。

// Your values are stored in this array
$your_array = array("name" => "some name", "place" => "some place");

// Check if the `value` is a key in your array
if (array_key_exists($_GET['value'], $your_array)) {
   $search_value = $your_array[$_GET['value']];
}
else {
  // Not found.. Use some default value instead.
}

答案 1 :(得分:0)

您可以使用in_array()方法

检查数值是否在数组中

示例:

$yourArray = array(...);

if ($_GET['value'] == 'name') {
   if (in_array($theName,$yourArray)) {
      // build your query
   }
}

答案 2 :(得分:0)

if (isset($_GET['value'])) {
     if ($value = $your_array[$_GET['value']]) {
         //do something by this $value
     }
}
else {
   echo 'nothing';
}