下面的例子顯示了我目前正在做的事情。MVC - 尋找更好的方法從URL獲取
index.php包括index_controller.php然後index_template.php。
index_controller.php
$uri = explode('/', $_SERVER['REQUEST_URI']);
$action = $uri[1];
$call = $uri[2];
$tmp = explode('?', $call);
$call = $tmp[0];
$call = preg_replace('/-/', ' ', $call);
switch ($action) {
case "about":
$page = "about.inc.php";
$title = "About Us";
$description = "Description of page";
break;
case "category":
try {
//PDO query to make sure category ($call) exists
}
catch (PDOException $e) {
logError($e->getMessage());
}
if (query->rowCount() < 1) {
$page = "404.inc.php";
$title = "404 Error";
}
else {
//Meta information for selected category pulled from DB and put into variables.
$page = "category.inc.php";
break;
default:
$page = "404.inc.php";
$title = "404 Error";
}
上面的例子示出的switch語句中大約12不同頁面選項2。一個簡單的請求(約)和一個更復雜的請求(類別)。
index_template.php
擁有我所有的頭,身和頁腳HTML。它設置爲頁面的元數據,建立了網站的結構,包括任何文件$page
變量被設置爲index_controller.php
使用上面的例子,如果有人去mysite.com/category/booksindex_controller.php
將會查看書籍類別是否存在,以及是否包含category.inc.php
。
category.inc.php
執行另一個PDO查詢以獲取顯示所選類別的項目列表所需的所有項目和信息。它還包含一個模板文件來構建返回項目的顯示。
我想實現一個MVC類型的結構(不使用像Codeigniter或CakePHP框架),但我真的沒有模型結束。
如何使用類和/或函數而不是我目前使用的所有包含從URL到視圖的用戶?
如果您覺得我沒有很好地解釋提及的其他文件,我也可以從這些文件中提供代碼示例。
任何幫助,輸入或建議將不勝感激。
編輯:根據下面的評論澄清問題。
這是一個相當廣泛的問題 - 它幾乎讀作「我怎樣才能建立一個MVC框架?」這個問題的標題暗示了一些更具體的內容,但你從來沒有真正澄清過。如果你還沒有,請看看[幫助],因爲了解這個網站與普通論壇的不同之處很重要:你不開始對話,所以你需要關注一個特定的問題,並且確保它是該網站的「主題」。 – IMSoP
@IMSoP很抱歉的問題很多。我編輯它試圖澄清實際問題。希望這有助於更好地瞭解我所尋找的內容。 – Jay