您可以通过它的键轻松获取数组值:$value = array[$key]
但是如果我有值并且我想要它的键怎么办?获得它的最佳方式是什么?
答案 0 :(得分:61)
您可以使用array_search()
查找第一个匹配的密钥。
从手册:
$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');
$key = array_search('green', $array); // $key = 2;
$key = array_search('red', $array); // $key = 1;
答案 1 :(得分:15)
您可以使用 array_keys
功能。
示例:强>
$array = array("blue", "red", "green", "blue", "blue");
print_r(array_keys($array, "blue"));
这将从值blue
答案 2 :(得分:4)
$arr = array('mango', 'orange', 'banana');
$a = array_flip($arr);
$key = $a['orange'];
答案 3 :(得分:0)
没有非常简单的方法。循环键,直到找到数组[$ key] == $ value
如果经常这样做,请创建一个反向数组/哈希,将值映射回键。请记住,多个键可能会映射到单个值。
答案 4 :(得分:0)
您的数组值可能重复,因此它不会为您提供准确的键。然而,我认为很好的方式就像迭代并读取密钥