WP_Fatal_Error_Handler::should_handle_error( array $error ): bool

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

Parameters

$errorarrayrequired
Error information retrieved from error_get_last().

Return

bool Whether WordPress should handle this error.

Source

protected function should_handle_error( $error ) {
	$error_types_to_handle = array(
		E_ERROR,
		E_PARSE,
		E_USER_ERROR,
		E_COMPILE_ERROR,
		E_RECOVERABLE_ERROR,
	);

	if ( isset( $error['type'] ) && in_array( $error['type'], $error_types_to_handle, true ) ) {
		return true;
	}

	/**
	 * Filters whether a given thrown error should be handled by the fatal error handler.
	 *
	 * This filter is only fired if the error is not already configured to be handled by WordPress core. As such,
	 * it exclusively allows adding further rules for which errors should be handled, but not removing existing
	 * ones.
	 *
	 * @since 5.2.0
	 *
	 * @param bool  $should_handle_error Whether the error should be handled by the fatal error handler.
	 * @param array $error               Error information retrieved from `error_get_last()`.
	 */
	return (bool) apply_filters( 'wp_should_handle_php_error', false, $error );
}

Hooks

apply_filters( ‘wp_should_handle_php_error’, bool $should_handle_error, array $error )

Filters whether a given thrown error should be handled by the fatal error handler.

Changelog

VersionDescription
5.2.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.