扩展控制器类时Slim RuntimException

时间:2016-08-19 14:09:04

标签: php oop slim slim-3

错误是:

  

致命错误:未捕获的异常' RuntimeException'带有消息'输出缓冲区中的意外数据。也许你在开幕前有角色

我已经构建了一个非常简单的控制器类来处理我正在处理的MVC的路由和呈现。我在容器中注册所有控制器并设置调用它们的路由,如'className:methodName'正在工作。每个控制器虽然需要一个构造函数来设置容器,以便我可以渲染php视图。这似乎是一件好事,因此我做了一个抽象的课程

abstract class Controller {
    public $container;

    function __constructor($container = null){
         $this->container = $container;
    }
}

字面上只改变一个抽象层,但这就是上面提到的错误发生的时候。

我可以通过添加以下设置来修复:

addContentLengthHeader = false

哪个好,因为我仍然可以工作,但我不确定A)为什么内容长度设置是一些额外的安全性或什么?和B)为什么这种抽象会导致这种情况发生,如果我做的不同呢?

1 个答案:

答案 0 :(得分:1)

如果在类声明之前或之后有空格或其他字符,则会显示此错误。在打开PHP标记之前,请检查源文件中的空格