如何在使用Front Controller模式的同时在PHP项目中使用ob_start()


How to use ob_start() in PHP project while using of Front Controller pattern

当我使用Front Controller模式时,如何在我的PHP项目中使用ob_start()?我的意思是,我只是希望它在我的项目中的一些文件,而不是所有的文件。

我的index.php是这样的,我想在register.php:中使用header(location:)重定向

<?php
session_start();
require_once("../base/initialize.php");
switch($path)
{
    case '/':
    case '/index.php':
        require_once(MAIN_PATH.DS.'index.php');
        break;
    case '/user/register.php':
        require_once(M_USER_PATH.DS.'register.php');
        break;
    case '/user/login.php':
        require_once(M_USER_PATH.DS.'login.php');
        break;

我发现了自己的错误。我认为ob_start()必须是页面中的第一个内容(如session_start()),但这不是必须的,您只需将其放在发送标头之前。

所以我把它放在register.php中的头布局之前,重定向做得很好。