如何检查多维数组键是否多次在数组中?

黑暗交响曲

我有这个多阵列:

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';

}

但这仍然不起作用。

脚本47

可以使用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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章