這是一篇介紹如何用php來實現MVC模式開發的文件。關於MVC模式的技術文章網上隨處可以,所以這篇文件將不再講述這種模式的優缺點(實際
上是我說不清楚),子講他的php技術實現。並且在以後的系列文章中也是以講技術為主。
一、實現統一的網站入口(在MVC中調用Controler層的方法,也就是控制層)
大家也許經常在網上看到這樣的路徑(http://www.aaa.com/aaa/bbb/aaa?id=5),讓人不解,這樣的網站的實現方式有幾種可能性:
1、隱藏文件的擴展名,對這種做法的好處,眾說紛纭,不過個人覺得沒有必要;
2、用了網站的重定向規則,實現虛擬路徑;
3、強制文件解析的方式,實現虛擬路徑。
用第23種方法可以實現網站的統一接口,合理的整合網站,更好的體現網站的安全性和架構,用這兩種方式的網站大多是使用“MVC”模式構
建和實現的。
下面是一個例子
訪問路徑如下:
..../test/*******/Bad
..../test/*******/Good
(其中的"******"可以用任何字符串替換,"......."是你的web路徑)
文件的目錄結構如下
|-- .htaccess
|-- test
|-- Application.php
|-- Controler/GoodControler.php
|-- Controler/BadControler.php
注意 文件".htaccess",在windows下不能直接建立的,可以在命令行模式下建立.
文件0:(.htaccess)(這個文件是更改apache的配置方式用的)
<files test>
forcetype application/x-httpd-php
</files>
文件1:(test.php)
<?php
/*-------------------------------------
* test.php
*
* 作為你的網站的入口的文件
* 用來初始化和入口
* 調用執行Controler的調用
*
-------------------------------------*/
require "Application.php";
$aa = new Application();
$aa->parse();
$aa->go();
?>