Title: WP_Fatal_Error_Handler::detect_error
Published: May 7, 2019
Last modified: August 20, 2026

---

# WP_Fatal_Error_Handler::detect_error(): array|null

## In this article

 * [Return](https://developer.wordpress.org/reference/classes/wp_fatal_error_handler/detect_error/?output_format=md#return)
 * [Source](https://developer.wordpress.org/reference/classes/wp_fatal_error_handler/detect_error/?output_format=md#source)
 * [Related](https://developer.wordpress.org/reference/classes/wp_fatal_error_handler/detect_error/?output_format=md#related)
 * [Changelog](https://developer.wordpress.org/reference/classes/wp_fatal_error_handler/detect_error/?output_format=md#changelog)

Detects the error causing the crash if it should be handled.

## 󠀁[Return](https://developer.wordpress.org/reference/classes/wp_fatal_error_handler/detect_error/?output_format=md#return)󠁿

 array|null Error information returned by `error_get_last()`, or null if none was
recorded or the error should not be handled.

## 󠀁[Source](https://developer.wordpress.org/reference/classes/wp_fatal_error_handler/detect_error/?output_format=md#source)󠁿

    ```php
    protected function detect_error() {
    	$error = error_get_last();

    	// No error, just skip the error handling code.
    	if ( null === $error ) {
    		return null;
    	}

    	// Bail if this error should not be handled.
    	if ( ! $this->should_handle_error( $error ) ) {
    		return null;
    	}

    	return $error;
    }
    ```

[View all references](https://developer.wordpress.org/reference/files/wp-includes/class-wp-fatal-error-handler.php/)
[View on Trac](https://core.trac.wordpress.org/browser/tags/7.1/src/wp-includes/class-wp-fatal-error-handler.php#L75)
[View on GitHub](https://github.com/WordPress/wordpress-develop/blob/7.1/src/wp-includes/class-wp-fatal-error-handler.php#L75-L89)

## 󠀁[Related](https://developer.wordpress.org/reference/classes/wp_fatal_error_handler/detect_error/?output_format=md#related)󠁿

| Uses | Description | 
| [WP_Fatal_Error_Handler::should_handle_error()](https://developer.wordpress.org/reference/classes/wp_fatal_error_handler/should_handle_error/)`wp-includes/class-wp-fatal-error-handler.php` |

Determines whether we are dealing with an error that WordPress should handle in order to protect the admin backend against WSODs.

  |

| Used by | Description | 
| [WP_Fatal_Error_Handler::handle()](https://developer.wordpress.org/reference/classes/wp_fatal_error_handler/handle/)`wp-includes/class-wp-fatal-error-handler.php` |

Runs the shutdown handler.

  |

## 󠀁[Changelog](https://developer.wordpress.org/reference/classes/wp_fatal_error_handler/detect_error/?output_format=md#changelog)󠁿

| Version | Description | 
| [5.2.0](https://developer.wordpress.org/reference/since/5.2.0/) | Introduced. |

## User Contributed Notes

You must [log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Fclasses%2Fwp_fatal_error_handler%2Fdetect_error%2F)
before being able to contribute a note or feedback.