在PHP中,如果不使用内置函数(如 array_intersect
),可以通过手动遍历数组来实现数组的交集操作。以下是一个示例代码,展示如何在不使用内置函数的情况下求两个数组的交集:
<?php
function manualIntersect($array1, $array2) {
$result = [];
// 遍历第一个数组
foreach ($array1 as $value1) {
// 检查当前元素是否在第二个数组中
foreach ($array2 as $value2) {
if ($value1 === $value2) {
// 如果找到相同的元素,将其添加到结果数组中
$result[] = $value1;
break; // 跳出内层循环,继续下一个元素的比较
}
}
}
return $result;
}
// 示例数组
$array1 = [1, 2, 3, 4, 5];
$array2 = [3, 4, 5, 6, 7];
// 调用自定义函数求交集
$intersection = manualIntersect($array1, $array2);
// 输出结果
print_r($intersection);
?>
foreach
循环遍历第一个数组 $array1
中的每个元素。$array1
中的每个元素,再次使用 foreach
循环遍历第二个数组 $array2
,检查是否有相同的元素。$result
中。Array
(
[0] => 3
[1] => 4
[2] => 5
)
通过这种方式,你可以在不使用内置函数的情况下手动实现数组的交集操作。