在Codeigniter上的控制器中(提前终止)返回(退出)(使用Twig模板引擎)

时间:2019-05-11 18:03:23

标签: php codeigniter codeigniter-2

有人告诉我,如果我在控制器中写一个return,它将循环并在Codeigniter上导致错误。

例如,在Controller中按如下所示编写(返回视图)是否不合适?

public function example {
    // ...
    if (some conditions ...) {
        return $this->twig->display('templates/error.html');
    }

    return $this->twig->display('templates/success.html');
}

我对Codeigniter不熟悉。
我认为返回值是Controller中的一个问题,并按如下所示进行了纠正。

public function example {
    // ...
    if (some conditions ...) {
        $this->twig->display('templates/error.html');
        return;
    }

    $this->twig->display('templates/success.html');
    return;
}

旧版本的Codeigniter也可能会影响... (Codeigniter 2.1.3和PHP 5.3.3和Twig 1.36。*)
那些提到错误位置的人对此并不确定。 错误很少发生(ERR_EMPTY_RESPONSE)。

我要检查的是Controller中的上述写入方法是否没有问题。

1 个答案:

答案 0 :(得分:0)

我不恰当地认为您的意思是“会导致错误”,答案是否定的。这些用户遇到的错误通常是由于其端的连接问题或与php无关的服务器问题。

他们的文档中的CodeIgniter甚至使用带有return语句的控制器方法作为表单验证回调的一种方式,因此这并非闻所未闻。

话虽这么说,但我不确定您为什么甚至需要这些return语句。如果您想停止脚本,则exit()会更合适。