回复讨论(解决方案) $a = array( 'a' => array(1,2,3,4,5,6), 'b' => array(1,7,8,9), 'c' => array(1,6,7,8,9),); $b = array( '2','4');$r = array_filter($a, function($t) use ($b) { return array_intersect($b, $t) == $b;});print_r($r);
array( [a] => array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 ))
foreach ($a as $key => $aa) { if (count($aa) == count(array_flip(array_merge($aa, $b)))) { echo $key; break; }}
不知道这个算不算高效
$a = array( 'a' => array(1,2,3,4,5,6), 'b' => array(1,7,8,9), 'c' => array(1,6,7,8,9),); $b = array( '2','4');$r = array_filter($a, function($t) use ($b) { return array_intersect($b, $t) == $b;});print_r($r);
array( [a] => array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 ))
牛比。。
