return $this;
} $statusCode = \
func_num_args() > 0 ?
func_get_arg(0
) : null;
$informationalResponse =
$statusCode >= 100 &&
$statusCode < 200;
if ($informationalResponse && !\
function_exists('headers_send'
)) { // skip informational responses if not supported by the SAPI
return $this;
} // headers
foreach ($this->headers->
allPreserveCaseWithoutCookies() as $name =>
$values) { $newValues =
$values;
$replace = false;
// As recommended by RFC 8297, PHP automatically copies headers from previous 103 responses, we need to deal with that if headers changed
if (103 ===
$statusCode) { $previousValues =
$this->sentHeaders
[$name] ?? null;
if ($previousValues ===
$values) { // Header already sent in a previous response, it will be automatically copied in this response by PHP
continue;
}