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

Dar*_*ony 0 php arrays

我有这个多数组:

Array ( 
    [0] => Array ( 
            [title] => f2 
        ) 
    [1] => Array ( 
            [title] => f2 
        ) 
    [2] => Array ( 
            [title] => f3 
        ) 
) 
Run Code Online (Sandbox Code Playgroud)

我只想检查键(由表示$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';

}
Run Code Online (Sandbox Code Playgroud)

但这仍然无法正常工作。

Scr*_*t47 6

array_columnarray_count_values可以结合使用:

 $arr = [
  [
    'title' => 'f2'
  ],

  [
    'title' => 'f2'
  ],

  [
    'title' => 'f3'
  ]
];

$counts = array_count_values(array_column($arr, 'title'));

print_r($counts);
Run Code Online (Sandbox Code Playgroud)

输出量

Array
(
    [f2] => 2
    [f3] => 1
)
Run Code Online (Sandbox Code Playgroud)

获得总数后,您只需执行以下操作:

if (($counts[$item] ?? 0) > 1) {
    // do action
}
Run Code Online (Sandbox Code Playgroud)

阅读材料

空合并运算符