Php SLIM框架暂停调用
对slimframeworkphp有疑问 在我的应用程序中,如果条件不匹配,我希望停止应用程序的执行 根据Slim文档,有一个暂停功能。但这似乎不起作用。 即使在调用Halt之后,应用程序仍将继续执行 伪代码:Php SLIM框架暂停调用,php,frameworks,execution,slim,halt,Php,Frameworks,Execution,Slim,Halt,对slimframeworkphp有疑问 在我的应用程序中,如果条件不匹配,我希望停止应用程序的执行 根据Slim文档,有一个暂停功能。但这似乎不起作用。 即使在调用Halt之后,应用程序仍将继续执行 伪代码: if ( $valid ) { // Do something } else { $app->halt(500, "not valid"); } // Other code here. $app->run(); 我希望,我们调用Halt函数,“
if ( $valid ) {
// Do something
} else {
$app->halt(500, "not valid");
}
// Other code here.
$app->run();
我希望,我们调用Halt函数,“其他代码”不应该执行。
但事实似乎并非如此
有什么想法吗?您可以始终手动调用以停止脚本执行
$app->halt(500, "not valid");
exit;
Halt只能在路由回调的上下文中调用。我建议您在官方Slim框架支持论坛上提出更多问题: 致以最良好的祝愿,
乔希停止应该有效。正如Josh提到的,它确实需要从路由回调中调用。例如,如果找不到指定的路由,我将以下内容用作自定义404(index.php内部)
// not found (custom 404)
$app->notFound(function () use ($app) {
// build response
$response = array(
'type' => 'not_found',
'message' => 'The requested resource does not exist.'
);
// output response
$app->halt(404, json_encode($response));
});
请注意使用($app)的参考信息——更多信息可在此处找到:如果使用回调函数,则可以使用return
return $app->halt(500,"message");
或
停止功能后。这就是我一直在做的。但是苗条的男人不推荐它。他们说哈尔特应该处理好它。这是参考资料@凯文拉维啊。好吧,那我就被绊倒了。不管怎样,那是现在唯一的选择!谢谢
$app->stop();