The Controller
我們MVC系統的控制部份式真的很簡單,而且不需很多的運作,先確認’controllers’目錄是否存在,然後在’classes’目錄新增’controller_base.php’新的檔案,然後將下面的程式碼放入:
protected $registry;
function __construct($registry) {
$this->registry = $registry;
}
abstract function index();
}
?>
這個抽象類別會是我們所有控制器的父類別,而它只做兩件事:儲存Registry類別的複製然後確認我們所有的控制器都有index()方法。
現在讓我們新增第一個控制器,在’controllers’目錄中新增’index.php’,然後加入下面的程式碼:
function index() {
echo ‘Hello from my MVC system’;
}
}
?>
我們現在已新增了我們第一個控制器,現在假如你想執行我們的MVC系統,你會看到下圖:
(Click here to view full version)
這表示我們的Router類別有在工作,然後執行正確的控制器及action,讓我們新增另一個關於像’members/view’這樣請求的控制器,在控制器目錄新增’members.php’,加入下面的程式碼:
function index() {
echo ‘Default index of the `members` controllers’;
}
function view() {
echo ‘You are viewing the members/view request’;
}
}
?>
現在回到你的MVC系統,確認請求是members/view’,不是直接到那裡就是透過index.php?route=members/view請求過去,你會得到下面的結果:
(Click here to view full version)
就只要在我們的MVC系統新增可以定義完整新的控制器類別及方法,我們不需要改變我們系統任何其他的東西,我們的控制器完全不需要含括’global.php’這個檔。
現在我們已經取得MVC系統控制器的部份,我們還有一件事要作:我們MVC系統的’V’或視圖的部份。