我有个问题。当我没有得到 $item 时,我需要抛出 404 错误(参见代码)。
class HomeHandler implements RequestHandlerInterface
{
private $template;
private $dataService;
public function __construct(
Template\TemplateRendererInterface $template = null,
DataServiceInterface $dataService
) {
$this->template = $template;
$this->dataService = $dataService;
}
public function handle(ServerRequestInterface $request) : ResponseInterface
{
$alias = $request->getAttribute('alias', '');
$item = $this->dataService->getItem($alias);
if(!isset($item)) {
// Here you need to throw 404 error
}
return new HtmlResponse($this->template->render('app::home-page', $item));
}
}
我使用 Zend Expressive 3。
感谢您的任何想法