You are here

function _drupal_error_header in Drupal 10

Same name and namespace in other branches
  1. 8 core/includes/errors.inc \_drupal_error_header()
  2. 9 core/includes/errors.inc \_drupal_error_header()

Adds error information to headers so that tests can access it.

Parameters

$message: The error message.

$type: The type of error.

$function: The function that emitted the error.

$file: The file that emitted the error.

$line: The line number in file that emitted the error.

2 calls to _drupal_error_header()
_drupal_error_handler_real in core/includes/errors.inc
Provides custom PHP error handling.
_drupal_log_error in core/includes/errors.inc
Logs a PHP error or exception and displays an error page in fatal cases.

File

core/includes/errors.inc, line 349
Functions for error handling.

Code

function _drupal_error_header($message, $type, $function, $file, $line) {

  // $number does not use drupal_static as it should not be reset
  // as it uniquely identifies each PHP error.
  static $number = 0;
  $assertion = [
    $message,
    $type,
    [
      'function' => $function,
      'file' => $file,
      'line' => $line,
    ],
  ];

  // For non-fatal errors (e.g. PHP notices) _drupal_log_error can be called
  // multiple times per request. In that case the response is typically
  // generated outside of the error handler, e.g., in a controller. As a
  // result it is not possible to use a Response object here but instead the
  // headers need to be emitted directly.
  header('X-Drupal-Assertion-' . $number . ': ' . rawurlencode(serialize($assertion)));
  $number++;
}