自定义数组比较功能

时间:2017-04-13 08:57:08

标签: php arrays

这个自定义函数正在比较两个数组,但如果数组完全不同,我将得到错误“Undefined variable:c”。我该如何解决这个问题?

function myIntersect($a, $b) {
    foreach ($a as $x) {
        $i = array_search($x, $b);
        if ($i !== false) {
            $c[] = $x;
            unset($b[$i]);
        }
    }
    return $c;
}

结果:

$arrayone = array("3", "2", "1", "2", "3");
$arraytwo = array("1", "2", "3", "2", "1");
$result = myIntersect($arrayone, $arraytwo);
print_r($result); // ["3", "2", "1", "2"]

1 个答案:

答案 0 :(得分:1)

现在将它添加到您的函数中它将定义一个空数组,您可以将其定义为boolean false。 $c=array();

function myIntersect($a, $b) {
    $c=array();//add this to your function now it will define an empty array else you can define as boolean false
    foreach ($a as $x) {
        $i = array_search($x, $b);
        if ($i !== false) {
            $c[] = $x;
            unset($b[$i]);
        }
    }
    return $c;
}