我有一個這樣的數組。我想要的是獲取特定值的索引值。即,我想知道價值「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