示例#1
0
 */
$uri = $factory->createUriFromServerSuperGlobal();
$key = $uri->getRouteKey();
$parts = explode('.', $key);
$key = current($parts);
$format = strtolower(next($parts));
if (empty($format)) {
    $format = 'html';
}
$input = $factory->createInputFromSuperGlobals($uri);
$route = $factory->createRouteDetail($key);
if (!$route instanceof MvcRouteDetailInterface) {
    $err = "could not resolve route detail for -({$key})";
    throw new LogicException($err);
}
$context = $factory->createContext($key, $input);
$init->runStartupTasks($route);
$viewBuilder = $factory->createViewBuilder();
$viewBuilder->setupView($context, $route, $format);
$front = $factory->createFront();
$context = $front->run($context);
$content = $viewBuilder->composeView($context, $route, $format);
$code = $context->getExitCode();
$headers = $context->get('http-headers', array());
if (!is_array($headers) || empty($headers)) {
    $headers = null;
}
$response = new HttpResponse($content, $code, null, $headers);
$output = new HttpOutput();
$output->render($response);
exit($code);
示例#2
0
 /**
  * @param	string	$text
  * @param	int		$code
  * @return	null
  */
 protected function sendHttpOutput($text, $code = 500)
 {
     $output = new HttpOutput();
     $output->render(new HttpResponse($text, $code));
 }