本文整理汇总了PHP中add::shutdown方法的典型用法代码示例。如果您正苦于以下问题:PHP add::shutdown方法的具体用法?PHP add::shutdown怎么用?PHP add::shutdown使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类add
的用法示例。
在下文中一共展示了add::shutdown方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: handle_exception
/**
* Do nothing, the reason we hate spam is because it bothers us, so we will ignore this error
*
*/
public function handle_exception()
{
return add::shutdown(false);
}
示例2: handle_exception
/**
* handle_exception()
* The error handler for exceptions
* @param Exception $e the exception to handle
* @since ADD MVC 0.0
*/
static function handle_exception(Exception $e)
{
try {
while (ob_get_level()) {
# Do not echo this, it is a big security risk
ob_get_clean();
}
try {
if (method_exists($e, 'handle_exception')) {
return $e->handle_exception();
} else {
throw new Exception("Non e_add exception sub class or no handle_exception() function found for exception");
}
} catch (Exception $e2) {
if ($e instanceof SmartyException) {
static::handle_exception(new e_smarty($e->getMessage(), array('message' => $e->getMessage(), 'code' => $e->getCode(), 'trace' => str_replace(array(add::config()->root_dir, add::config()->add_dir), array('*root_dir*', '*add_dir*'), $e->getTraceAsString()))));
}
if (add::content_type() == 'text/plain') {
die(get_class($e) . "(#" . $e->getCode() . ")\r\n\r\n" . $e->getMessage() . "\r\n\r\n" . $e->getFile() . ":" . $e->getLine() . "\r\n\r\n\r\n\r\n");
} else {
if (add::is_developer()) {
DEFINE('add\\terminal_error\\error_message', $e->getMessage());
DEFINE('add\\terminal_error\\error_trace', $e->getTraceAsString());
DEFINE('add\\terminal_error\\error_header', get_class($e));
DEFINE('add\\terminal_error\\error_footer', $e->getFile() . ":" . $e->getLine());
} else {
$debug_mail_to = add::config()->developer_emails;
if (is_array($debug_mail_to) || is_object($debug_mail_to)) {
$debug_mail_to = implode(",", (array) $debug_mail_to);
}
mail($debug_mail_to, "Terminal Error: " . $e->getMessage(), $e->getTraceAsString());
DEFINE('add\\terminal_error\\error_message', 'An error occured<br />please contact the system administrators or go back to <a href="' . add::config()->path . '">Home</a>');
DEFINE('add\\terminal_error\\error_header', 'Warning!');
DEFINE('add\\terminal_error\\error_footer', 'Please contact the system administrators');
DEFINE('add\\terminal_error\\error_trace', '');
}
if (!headers_sent() && !add::include_include_file('terminal_error.php')) {
throw new Exception("Failed to display terminal error");
}
add::shutdown(false);
}
}
} catch (Exception $e3) {
$e1_string = "<div style='color:red'>" . get_class($e) . "(#" . $e->getCode() . ")" . $e->getMessage() . "\r\n" . $e->getFile() . ":" . $e->getLine() . "</div>";
echo $e1_string;
$e3_string = "<div style='color:red'>" . get_class($e3) . "(#" . $e3->getCode() . ")" . $e3->getMessage() . "\r\n" . $e3->getFile() . ":" . $e3->getLine() . "</div>";
if ($e3_string != $e1_string) {
echo $e3_string;
}
debug::var_dump($e3->getTraceAsString());
die;
}
}
示例3: handle_exception
/**
* Handle the exception
*
* @since ADD MVC 0.0
*/
public function handle_exception()
{
echo "{$this->getFile()}({$this->getLine()}): ({$this->getCode()}){$this->getMessage()}";
add::shutdown();
}
示例4: handle_exception
/**
* handle_exception()
* The error handler for exceptions
* @param Exception $e the exception to handle
* @since ADD MVC 0.0
*/
static function handle_exception(Exception $e)
{
try {
try {
if (method_exists($e, 'handle_exception')) {
return $e->handle_exception();
} else {
throw new Exception("Non e_add exception sub class or no handle_exception() function found for exception");
}
} catch (Exception $e2) {
while (ob_get_level()) {
ob_end_clean();
}
if ($e instanceof SmartyException) {
static::handle_exception(new e_smarty($e->getMessage(), $e));
}
if (add::content_type() == 'text/plain') {
die(get_class($e) . "(#" . $e->getCode() . ")\r\n\r\n" . $e->getMessage() . "\r\n\r\n" . $e->getFile() . ":" . $e->getLine() . "\r\n\r\n\r\n\r\n");
} else {
DEFINE('add\\terminal_error\\error_message', $e->getMessage());
DEFINE('add\\terminal_error\\error_header', get_class($e));
DEFINE('add\\terminal_error\\error_footer', $e->getFile() . ":" . $e->getLine());
if (!headers_sent() && !add::include_include_file('terminal_error.php')) {
throw new Exception("Failed to display terminal error");
}
add::shutdown(false);
}
}
} catch (Exception $e3) {
$e1_string = "<div style='color:red'>" . get_class($e) . "(#" . $e->getCode() . ")" . $e->getMessage() . "\r\n" . $e->getFile() . ":" . $e->getLine() . "</div>";
echo $e1_string;
$e3_string = "<div style='color:red'>" . get_class($e3) . "(#" . $e3->getCode() . ")" . $e3->getMessage() . "\r\n" . $e3->getFile() . ":" . $e3->getLine() . "</div>";
if ($e3_string != $e1_string) {
echo $e3_string;
}
debug::var_dump($e3->getTraceAsString());
die;
}
}
示例5: ob_start
<?php
require 'add_configure.php';
ob_start('ob_gzhandler');
echo 'test output';
#ob_end_flush(); # Required for output, shouldn't be
add::shutdown();
示例6: handle_exception
/**
* handle_exception()
* The error handler for exceptions
* @param Exception $e the exception to handle
* @since ADD MVC 0.0
*/
static function handle_exception(Exception $e)
{
try {
if (method_exists($e, 'handle_exception')) {
return $e->handle_exception();
} else {
while (ob_get_level()) {
ob_end_clean();
}
if ($e instanceof SmartyException) {
static::handle_exception(new e_smarty($e->getMessage(), $e));
}
if (add::content_type() == 'text/plain') {
die(get_class($e) . "(#" . $e->getCode() . ")\r\n\r\n" . $e->getMessage() . "\r\n\r\n" . $e->getFile() . ":" . $e->getLine() . "\r\n\r\n\r\n\r\n");
} else {
DEFINE('add\\terminal_error\\error_message', $e->getMessage());
DEFINE('add\\terminal_error\\error_header', get_class($e));
DEFINE('add\\terminal_error\\error_footer', $e->getFile() . ":" . $e->getLine());
if (!headers_sent() && !add::include_include_file('terminal_error.php')) {
throw new $e();
}
add::shutdown(false);
}
}
} catch (Exception $e) {
die("<div style='color:red'>" . $e->getMessage() . "\r\n" . $e->getFile() . ":" . $e->getLine() . "</div>");
}
}