首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >超薄框架暂停调用

超薄框架暂停调用
EN

Stack Overflow用户
提问于 2012-04-18 03:47:19
回答 4查看 5.8K关注 0票数 0

有一个关于Slim Framework php的问题。

在我的应用程序中,如果条件不匹配,我希望停止应用程序的执行。

根据Slim文档,有一个halt功能。但这似乎并不管用。即使在调用Halt之后,应用程序也会继续执行。

伪代码:

代码语言:javascript
运行
复制
if ( $valid ) {
         // Do something
} else {
    $app->halt(500, "not valid");
}
// Other code here.


$app->run();

我期望的是,我们调用Halt函数,“其他代码”不应该执行。但事实似乎并非如此。

有什么想法吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-04-18 03:48:38

您始终可以手动调用exit来停止脚本执行。

代码语言:javascript
运行
复制
$app->halt(500, "not valid");
exit;
票数 1
EN

Stack Overflow用户

发布于 2012-05-31 15:09:04

暂停应该是可行的。正如Josh提到的,它确实需要从路由回调中调用。例如,在未找到指定路由的情况下,我使用以下代码作为自定义的404 (在index.php内)。

代码语言:javascript
运行
复制
    // 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) --有关这一点的更多信息可以在这里找到:http://www.slimframework.com/documentation/stable#scope-resolution

票数 6
EN

Stack Overflow用户

发布于 2012-04-18 09:33:03

Halt只能在路由回调的上下文中调用。我建议您在官方Slim Framework支持论坛上提出任何进一步的问题:

http://help.slimframework.com

致以最好的问候,乔希

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10198085

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档