我有这个多阵列:
Array (
[0] => Array (
[title] => f2
)
[1] => Array (
[title] => f2
)
[2] => Array (
[title] => f3
)
)
我只想检查一个键(由 表示$item
)是否多次出现在数组中,所以在我的情况下,'f2' 出现在其中不止一次。
我尝试使用in_array
,但它不适用于多数组。
然后我尝试了这个:
$item='f2';
$array_count = array_count_values($titles);
if (array_key_exists($item, $array_count) && ($array_count[$item] > 1))
{
echo 'more than once';
}
但这仍然不起作用。
可以使用array_column
和的组合array_count_values
:
$arr = [
[
'title' => 'f2'
],
[
'title' => 'f2'
],
[
'title' => 'f3'
]
];
$counts = array_count_values(array_column($arr, 'title'));
print_r($counts);
输出
Array
(
[f2] => 2
[f3] => 1
)
获得总数后,您可以简单地执行以下操作:
if (($counts[$item] ?? 0) > 1) {
// do action
}
阅读材料
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句