PHP数组比较和查找匹配和不匹配的项目

h_h*_*h_h 2 php

我一直在使用这个脚本来查找匹配和不匹配的数组项.

我的代码是.

$filter1 = "red,green,blue,yellow";         
$parts1 = explode(',', $filter1);

$filter2 = "red,green,blue";        
$parts2 = explode(',', $filter2);

for($i=0; $i< count($parts1); $i++)
{

    for($j=0; $j< count($parts2); $j++)
    {

        if($parts1[$i] == $parts2[$j])
        {
            $match[] = $parts1[$i];
        } else {
            $nomatch[] = $parts1[$i];
        }
    }
}

print_r($match);
echo "<br>";
print_r($nomatch);
Run Code Online (Sandbox Code Playgroud)

通过使用此代码,我只获得匹配的项目,而不是不匹配的项目.任何人都可以帮忙.提前致谢.

Bab*_*aba 6

你可以尝试使用array_intersectarray_diff

$filter1 = "red,green,blue,yellow";         
$parts1 = explode(',', $filter1);

$filter2 = "red,green,blue";        
$parts2 = explode(',', $filter2);

$match = array_intersect($parts1, $parts2);
$nomatch = array_diff($parts1, $parts2);

var_dump($match,$nomatch);
Run Code Online (Sandbox Code Playgroud)

产量

array
  0 => string 'red' (length=3)
  1 => string 'green' (length=5)
  2 => string 'blue' (length=4)
array
  3 => string 'yellow' (length=6)
Run Code Online (Sandbox Code Playgroud)