本文整理汇总了PHP中exception::getCode方法的典型用法代码示例。如果您正苦于以下问题:PHP exception::getCode方法的具体用法?PHP exception::getCode怎么用?PHP exception::getCode使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类exception
的用法示例。
在下文中一共展示了exception::getCode方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: header
/**
* Static s_display_error
*/
static function generic_display_error(exception $ex)
{
$title = $ex->getMessage();
$err_no = $ex->getCode();
if (!class_exists('loader') || class_exists('loader') && !loader::in_ajax()) {
header('', true, 500);
$message = '<style>* {font: 0.97em verdana;} a {text-decoration:none;background:#EFEFEF;padding:4px;} a:hover{background: red;}</style><h1>Ups! We have an error here.</h1>';
$subject = "Error " . " at " . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
$message .= 'Visit <a href="/">index</a> page.<br/><br/>';
echo $message;
// if debug
if (class_exists('core') && core::is_debug()) {
echo '<br/>Error : ' . $title . ' : ' . $err_no;
echo '<br/><br/>' . nl2br($ex->getTraceAsString());
}
}
}
示例2: errorAction
/**
* Show YAF Error
* only display errors under DEV, else save error in LOG_FILE
* @param exception $exception
* @return void
*/
public function errorAction($exception)
{
switch ($exception->getCode()) {
case YAF_ERR_NOTFOUND_MODULE:
case YAF_ERR_NOTFOUND_CONTROLLER:
case YAF_ERR_NOTFOUND_ACTION:
case YAF_ERR_NOTFOUND_VIEW:
if (ENV == 'DEV') {
echo 404, ":", $exception->getMessage();
} else {
echo 404;
file_put_contents(LOG_FILE, $exception->getMessage() . PHP_EOL, FILE_APPEND);
}
break;
default:
if (ENV == 'DEV') {
echo 0, ":", $exception->getMessage();
} else {
echo 'Unknown error';
file_put_contents(LOG_FILE, $exception->getMessage() . PHP_EOL, FILE_APPEND);
}
break;
}
}
示例3: handle
/**
* Handles all PHP exceptions.
*
* @param exception|\exception $exception An exception.
*
* @note Exceptions handled successfully by this routine will NOT be logged by PHP as errors.
* As the exception handler, we will need to log and/or display anything that needs to be recorded here.
* The PHP interpreter simply terminates script execution whenever an exception occurs (nothing more).
*
* @note If an exception is thrown while handling an exception; PHP will revert to it's default exception handler.
* This will result in a fatal error that may get logged by PHP itself (depending on `error_reporting` and `error_log`).
*
* @throws exception|\exception If we are unable to handle the exception (i.e. the XDaRk Core is not even available yet),
* this handler will simply re-throw the exception (forcing a fatal error); as just described in the previous note.
*
* @note The display of exception messages is NOT dependent upon `display_errors`; nor do we consider that setting here.
* However, we do tighten security within the `exception.php` template file; hiding most details by default; and displaying all details
* only if the current user is a Super Administrator in WordPress; or if `WP_DEBUG_DISPLAY` mode has been enabled on this site.
*
* @note If there was another exception handler active on the site; and this exception is NOT for
* a plugin under this version of the XDaRk Core; we simply hand the exception back to the previous handler.
* In the case of multiple versions of the XDaRk Core across various plugins; this allows us to work up the chain
* of previous handlers until we find the right version of the XDaRk Core; assuming each version
* of the XDaRk Core handles things this way too (which is to be expected).
*
* @see http://php.net/manual/en/function.set-exception-handler.php
*/
public static function handle(\exception $exception)
{
try {
static::$exception = $exception;
// Reference.
if (static::$exception instanceof exception) {
static::$plugin = static::$exception->plugin;
static::handle_plugin_exception();
return;
// We're done here.
}
// Else this is some other type of exception.
if (static::$previous_handler && is_callable(static::$previous_handler)) {
call_user_func(static::$previous_handler, static::$exception);
return;
// We're done here.
}
// There is NO other handler available (deal w/ it here; if possible).
if (is_callable('\\' . stub::$core_ns . '\\core')) {
static::$plugin = core();
static::handle_plugin_exception();
return;
// We're done here.
}
throw static::$exception;
// Re-throw (forcing a fatal error).
} catch (\exception $_exception) {
throw new \exception(sprintf(stub::__('Failed to handle exception code: `%1$s` with message: `%2$s`.'), $exception->getCode(), $exception->getMessage()) . ' ' . sprintf(stub::__('Failure caused by exception code: `%1$s` with message: `%2$s`.'), $_exception->getCode(), $_exception->getMessage()), 20, $_exception);
}
}
示例4: errorHandlerForFatal
/**
* handling the error to catch fatal errors.
*
* @param int $errno error number
* @param string|exception $errstr error message
* @param string $errfile file of the error
* @param int $errline line of the error
*
* @throws SoapFault
*/
public static function errorHandlerForFatal($errno, $errstr, $errfile = null, $errline = null)
{
$code = self::$_defaultCode;
self::stopErrorHandlerForFatal();
if ($errstr instanceof Exception) {
if ($errstr->getCode()) {
$code = $errstr->getCode();
}
$errstr = $errstr->getMessage();
} elseif (!is_string($errstr)) {
$errstr = 'Unknown error';
}
throw new SoapFault($code, $errstr . ' (error [' . $errno . '])');
}