我有一个这样的数组。我想要的是获取特定值的索引值。即,我想知道价值“UD”指数等。找到对应数组值的键
Array
(
[0] => LN
[1] => TYP
[2] => UD
[3] => LAG
[4] => LO
)
我该怎么做?
我有一个这样的数组。我想要的是获取特定值的索引值。即,我想知道价值“UD”指数等。找到对应数组值的键
Array
(
[0] => LN
[1] => TYP
[2] => UD
[3] => LAG
[4] => LO
)
我该怎么做?
array_search功能是用于那些使用
snipet:
$index = array_search('UD', $yourarray);
if($index === false){ die('didn\'t found this value!'); }
var_dump($index);
array_search()如果在haystack中发现不止一次针,则会返回第一个匹配键。要返回所有匹配值的键,请改用带可选search_value参数的array_keys()。看看我的回答(array_keys()) – Lizard 2009-11-05 07:44:12
我建议array_flip:
$value = "UD";
$new = array_flip($arr);
echo "result: " . $new[$value];
使用array_search
:
$array = array(0 => 'LN', 1 => 'TYP', 2 => 'UD', 3 => 'LAG', 4 => 'LO');
$key = array_search('UD', $array); // $key = 2;
if ($key === FALSE) {
// not found
}
array_search()如果不止一次在干草堆中发现针,则返回第一个匹配键。要返回所有匹配值的键,请改用带可选search_value参数的array_keys()。查看我的回答 – Lizard 2009-11-05 07:43:31
您最好的选择是:
array_keys()从输入数组中返回键,数字和字符串。
如果指定了可选的search_value,则只返回该值的键。否则,将返回输入中的所有键。不使用array_search))如果针在干草堆里不止一次发现
$array = array(0 => 'LN', 1 => 'TYP', 2 => 'UD', 3 => 'LAG', 4 => 'LO');
print_r(array_keys($array, "UD"));
Array
(
[0] => 2
)
可能考虑(
array_search(,第一个匹配的键返回。要返回所有匹配值的键,请改用带可选search_value参数的array_keys()。
只需要注意:其中一些array_ *函数在PHP 5.3中更加有用,并增加了匿名函数。在他们的名字
$values = array_filter($userArray, function($user)
{
// If this returns true, add the current $user object to the resulting array
return strstr($user->name(),"ac");
});
将返回所有元素在我们的包含“AC”用户对象的虚拟排列(“杰克”,“雅各布”):你现在可以做的事情一样。
在过去,创建函数或预先定义函数是可能的,但是这种语法使得它更容易访问。
$array = Array(0 => LN, 1 => TYP, 2 => UD, 3 => LAG, 4 => LO);
$arrtemp = array_keys($array,'UD');
echo 'Result : '.$arrtemp[0];
我用array_keys找到它。
你想知道一个值或多个值的索引吗? – outis 2009-11-05 07:28:05