是否可以在数组中搜索给定值并返回找到该值的所有索引?所以对于这个数组:["Red","Green","Red","Blue"]我需要[0,2]关于搜索“红色”。在这种情况下搜索“Yellow”将返回一个空数组。
3 回答
慕侠2389804
TA贡献1719条经验 获得超6个赞
你可以这样使用:
$array = ["Red","Green","Red","Blue"];
$output = array_keys($array, "Red");
该$output会[0,2]
翻过高山走不出你
TA贡献1875条经验 获得超3个赞
我认为这应该有效:
$input = ["Red","Green","Red","Blue"];
$x = "Red";
$keys = array_keys(array_filter($input, function ($v) use ($x) { return $v === $x;}));
有只小跳蛙
TA贡献1824条经验 获得超8个赞
您可以使用 foreach 迭代数组:
foreach($input_arr as $key => $value){
if($value == 'Red'){
needed_key_arr[] = $key;
}
}
此外,如果您可以拥有一组值,则可以使用搜索内容:
$lookup_arr = ['Red', 'Green'];
foreach($input_arr as $key => $value){
if(in_array($value, $lookup_arr)){
needed_key_arr[] = $key;
}
}
- 3 回答
- 0 关注
- 114 浏览
添加回答
举报
0/150
提交
取消