本文整理汇总了PHP中Nette\Debug::log方法的典型用法代码示例。如果您正苦于以下问题:PHP Debug::log方法的具体用法?PHP Debug::log怎么用?PHP Debug::log使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Nette\Debug
的用法示例。
在下文中一共展示了Debug::log方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: renderDefault
/**
* @param Exception
* @return void
*/
public function renderDefault($exception)
{
if ($this->isAjax()) { // AJAX request? Just note this error in payload.
$this->payload->error = TRUE;
$this->terminate();
} elseif ($exception instanceof BadRequestException) {
$code = $exception->getCode();
$this->setView(in_array($code, array(403, 404, 405, 410, 500)) ? $code : '4xx'); // load template 403.latte or 404.latte or ... 4xx.latte
} else {
$this->setView('500'); // load template 500.latte
Debug::log($exception, Debug::ERROR); // and log exception
}
}
示例2: processRequest
/**
* Processes request.
*
* @author Jan Tvrdík
* @param PresenterRequest
* @return void
* @throws Nette\Applicationy\AbortException|\InvalidStateException
*/
public function processRequest(PresenterRequest $request)
{
$params = $request->getParams();
$exception = & $params['exception'];
if (!isset($exception)) {
throw new \InvalidStateException('Missing required parameter - exception.');
}
if ($exception instanceof BadRequestException) {
$code = $exception->getCode();
$name = in_array($code, array(403, 404, 405, 410, 500)) ? $code : '4xx';
} else {
Debug::log($exception, Debug::ERROR);
$name = '500';
}
$this->page = '@errors/' . $name;
$this->sendTemplate();
}
示例3: run
//.........这里部分代码省略.........
$request = $router->match($httpRequest);
if (!$request instanceof PresenterRequest) {
$request = NULL;
throw new BadRequestException('No route for HTTP request.');
}
if (strcasecmp($request->getPresenterName(), $this->errorPresenter) === 0) {
throw new BadRequestException('Invalid request. Presenter is not achievable.');
}
}
$this->requests[] = $request;
$this->onRequest($this, $request);
// Instantiate presenter
$presenter = $request->getPresenterName();
try {
$class = $this->getPresenterLoader()->getPresenterClass($presenter);
$request->setPresenterName($presenter);
} catch (InvalidPresenterException $e) {
throw new BadRequestException($e->getMessage(), 404, $e);
}
$request->freeze();
// Execute presenter
$this->presenter = new $class;
$response = $this->presenter->run($request);
$this->onResponse($this, $response);
// Send response
if ($response instanceof ForwardingResponse) {
$request = $response->getRequest();
continue;
} elseif ($response instanceof IPresenterResponse) {
$response->send();
}
break;
} catch (\Exception $e) {
// fault barrier
$this->onError($this, $e);
if (!$this->catchExceptions) {
$this->onShutdown($this, $e);
throw $e;
}
if ($repeatedError) {
$e = new ApplicationException('An error occured while executing error-presenter', 0, $e);
}
if (!$httpResponse->isSent()) {
$httpResponse->setCode($e instanceof BadRequestException ? $e->getCode() : 500);
}
if (!$repeatedError && $this->errorPresenter) {
$repeatedError = TRUE;
if ($this->presenter instanceof Presenter) {
try {
$this->presenter->forward(":$this->errorPresenter:", array('exception' => $e));
} catch (AbortException $foo) {
$request = $this->presenter->getLastCreatedRequest();
}
} else {
$request = new PresenterRequest(
$this->errorPresenter,
PresenterRequest::FORWARD,
array('exception' => $e)
);
}
// continue
} else { // default error handler
if ($e instanceof BadRequestException) {
$code = $e->getCode();
} else {
$code = 500;
Nette\Debug::log($e, Nette\Debug::ERROR);
}
echo "<!DOCTYPE html><meta http-equiv='Content-Type' content='text/html; charset=utf-8'><meta name=robots content=noindex><meta name=generator content='Nette Framework'>\n\n";
echo "<style>body{color:#333;background:white;width:500px;margin:100px auto}h1{font:bold 47px/1.5 sans-serif;margin:.6em 0}p{font:21px/1.5 Georgia,serif;margin:1.5em 0}small{font-size:70%;color:gray}</style>\n\n";
static $messages = array(
0 => array('Oops...', 'Your browser sent a request that this server could not understand or process.'),
403 => array('Access Denied', 'You do not have permission to view this page. Please try contact the web site administrator if you believe you should be able to view this page.'),
404 => array('Page Not Found', 'The page you requested could not be found. It is possible that the address is incorrect, or that the page no longer exists. Please use a search engine to find what you are looking for.'),
405 => array('Method Not Allowed', 'The requested method is not allowed for the URL.'),
410 => array('Page Not Found', 'The page you requested has been taken off the site. We apologize for the inconvenience.'),
500 => array('Server Error', 'We\'re sorry! The server encountered an internal error and was unable to complete your request. Please try again later.'),
);
$message = isset($messages[$code]) ? $messages[$code] : $messages[0];
echo "<title>$message[0]</title>\n\n<h1>$message[0]</h1>\n\n<p>$message[1]</p>\n\n";
if ($code) echo "<p><small>error $code</small></p>";
break;
}
}
} while (1);
$this->onShutdown($this, isset($e) ? $e : NULL);
}
示例4: run
//.........这里部分代码省略.........
$session = $this->getSession();
if (!$session->isStarted() && $session->exists()) {
$session->start();
}
// routing
$router = $this->getRouter();
// enable routing debuggger
Nette\Debug::addPanel(new RoutingDebugger($router, $httpRequest));
$request = $router->match($httpRequest);
if (!$request instanceof PresenterRequest) {
$request = NULL;
throw new BadRequestException('No route for HTTP request.');
}
if (strcasecmp($request->getPresenterName(), $this->errorPresenter) === 0) {
throw new BadRequestException('Invalid request. Presenter is not achievable.');
}
}
$this->requests[] = $request;
$this->onRequest($this, $request);
// Instantiate presenter
$presenterName = $request->getPresenterName();
try {
$this->presenter = $this->getPresenterFactory()->createPresenter($presenterName);
} catch (InvalidPresenterException $e) {
throw new BadRequestException($e->getMessage(), 404, $e);
}
$this->getPresenterFactory()->getPresenterClass($presenterName);
$request->setPresenterName($presenterName);
$request->freeze();
// Execute presenter
$response = $this->presenter->run($request);
$this->onResponse($this, $response);
// Send response
if ($response instanceof ForwardingResponse) {
$request = $response->getRequest();
continue;
} elseif ($response instanceof IPresenterResponse) {
$response->send($httpRequest, $httpResponse);
}
break;
} catch (\Exception $e) {
// fault barrier
$this->onError($this, $e);
if (!$this->catchExceptions) {
$this->onShutdown($this, $e);
throw $e;
}
if ($repeatedError) {
$e = new ApplicationException('An error occured while executing error-presenter', 0, $e);
}
if (!$httpResponse->isSent()) {
$httpResponse->setCode($e instanceof BadRequestException ? $e->getCode() : 500);
}
if (!$repeatedError && $this->errorPresenter) {
$repeatedError = TRUE;
if ($this->presenter instanceof Presenter) {
try {
$this->presenter->forward(":$this->errorPresenter:", array('exception' => $e));
} catch (AbortException $foo) {
$request = $this->presenter->getLastCreatedRequest();
}
} else {
$request = new PresenterRequest(
$this->errorPresenter,
PresenterRequest::FORWARD,
array('exception' => $e)
);
}
// continue
} else { // default error handler
if ($e instanceof BadRequestException) {
$code = $e->getCode();
} else {
$code = 500;
Nette\Debug::log($e, Nette\Debug::ERROR);
}
require __DIR__ . '/templates/error.phtml';
break;
}
}
} while (1);
$this->onShutdown($this, isset($e) ? $e : NULL);
}