WordPress Version: 6.3
/**
* Get a human readable description of an extension's error.
*
* @since 5.2.0
*
* @param array $error Error details from `error_get_last()`.
* @return string Formatted error description.
*/
function wp_get_extension_error_description($error)
{
$constants = get_defined_constants(true);
$constants = isset($constants['Core']) ? $constants['Core'] : $constants['internal'];
$core_errors = array();
foreach ($constants as $constant => $value) {
if (str_starts_with($constant, 'E_')) {
$core_errors[$value] = $constant;
}
}
if (isset($core_errors[$error['type']])) {
$error['type'] = $core_errors[$error['type']];
}
/* translators: 1: Error type, 2: Error line number, 3: Error file name, 4: Error message. */
$error_message = __('An error of type %1$s was caused in line %2$s of the file %3$s. Error message: %4$s');
return sprintf($error_message, "<code>{$error['type']}</code>", "<code>{$error['line']}</code>", "<code>{$error['file']}</code>", "<code>{$error['message']}</code>");
}