Я хочу подсчитать количество группового массива в массиве. пример
$arr1 = [61,41,41,61,89,90] $arr2 = [61,41] $result = 2 //found 61,41 in $arr1 2 time;
Или пример
$arr1 = [89,61,41,41,61,90] $arr2 = [61,41,89] $result = 1 //found 61,41,89 in $arr1 1 time;
Как написать код или концепцию?
Я надеюсь, что это поможет вам..
$arr1 = array(61,41,41,61,89,90); $arr2 = array(61,41); $count = array_count_values($arr1); //count values from arr1 $result = array(); foreach($arr2 as $row) { $result[$row] = array_key_exists($row, $count) ? $count[$row] : 0; } echo min($result);
$ arr2 = [61,41] выход: 2
$ arr2 = [61,41,89] выход: 1
$arr1 = array(61,41,41,61,89,90); $arr2 = array(61,41); $occurrences = min( array_count_values(array_intersect($arr1, $arr2)) + array_fill_keys($arr2, 0) );
Возможно, несколько неясное решение, но одно выражение. Возвращает число, которое весь набор $arr2
встречается в $arr1
.