使用输出缓冲区时意外$结束

时间:2011-12-10 13:51:09

标签: php buffering

我在php中输出缓冲有一个奇怪的问题。使用此代码,我在尝试要求第一个文件后收到意外的$ end错误。 (在本例中为/header.php)以下是我的代码设置方式:

class View
{

    function __construct()
    {
        ob_start();
            $this->page();
        ob_end_flush();
    }

    private function rekwire($filename)
    {           
        if(file_exists(APPPATH.$filename)) require(APPPATH.$filename);
        else if(file_exists(BASEPATH.$filename)) require(BASEPATH.$filename);
    }

    private function page()
    {
        $this->rekwire('/header.php');
        $this->rekwire('/page.php');
        $this->rekwire('/footer.php');
    }

}

这个结构在我的webhost上对我有用。我最近在设置本地测试服务器(WAMP)时遇到了问题,这让我觉得它可能是php或apache的设置。任何帮助表示赞赏!

2 个答案:

答案 0 :(得分:1)

对象构造函数无效: -

__construct()

应该是:

function __construct()
public function __construct() // public scope

答案 1 :(得分:1)

我没有启用short_open_tags的php配置设置,并且头文件使用了echo快捷方式

很抱歉,如果这浪费了你的时间:)