GC_Fatal_Error_Handler::should_handle_error()

最后更新于:2021-11-27 14:55:15

GC_Fatal_Error_Handler::should_handle_error( array$error)

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

参数

$error

(array) (Required) Error information retrieved from error_get_last().

响应

(bool) Whether GeChiUI should handle this error.

源文件

文件: gc-includes/class-gc-fatal-error-handler.php

	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 GeChiUI 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( 'gc_should_handle_php_error', false, $error );
	}