我想看看一个数组是否有多次相同的值,例如:
$array=array('val1','val2','val3','val1');
如您所见,在上面的数组中,有 2 x val1 。 要搜索数组是否包含值,我可以使用 in_array 来完成:
$search=in_array('val1',$array);
并且它会返回 true 因为 val1 存在于数组中,但是如果多次找到该值我需要返回 true。
最佳答案
您可以利用 array_keys()
的一个鲜为人知的功能,该功能用于将数组的键作为新数组返回(即没有值。)
它接受一个可选的第二个参数,search
,它允许您规定您希望只返回那些值与您的搜索相对应的键。所以:
$arr = array('one', 'two', 'one', 'three');
$indexes = array_keys($arr, 'one'); //array(0, 2)
关于php - 如何多次检查一个数组是否有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26235186/