<?phpclass Solution { public function fourSum($nums, $target) { if (!$nums) return []; sort($nums); $ret = []; for($i = 0; $i < count($nums) - 3; $i++) { if ($i > 0 && $nums[$i] == $nums[$i - 1]) continue; for($j = $i + 1; $j < count($nums) - 2; $j++) { if ($j > 0 && $nums[$j] == $nums[$j - 1]) continue; $left = $j + 1; $right = count($nums) - 1; while ($left < $right) { $sum = $nums[$i] + $nums[$j] + $nums[$left] + $nums[$right]; if ($sum == $target) { array_push($ret, [$nums[$i] ,$nums[$j] ,$nums[$left] ,$nums[$right]]); while ($left < $right && $nums[$left] == $nums[$left + 1]) $left++; while ($left < $right && $nums[$right] == $nums[$right - 1]) $right--; } else if ($sum > $target) { $right--; } else { $left++; } } } } return $ret; }}$nums = [1, 0, -1, 0, -2, 2];$cls = new Solution();$r = $cls->fourSum($nums, 0);print_r($r);