这个自定义函数正在比较两个数组,但如果数组完全不同,我将得到错误“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"]
答案 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;
}