要實現一個簡易的MVC框架,可以遵循以下步驟:
<?php
// 定義常量
define('ROOT', dirname(__FILE__));
define('CONTROLLER_PATH', ROOT . '/controllers/');
define('MODEL_PATH', ROOT . '/models/');
// 解析URL
$url = $_SERVER['REQUEST_URI'];
// 路由到對應的控制器
$controllerName = 'HomeController'; // 默認控制器
$action = 'index'; // 默認方法
if (!empty($url)) {
$url = explode('/', $url);
$controllerName = ucfirst($url[1]) . 'Controller';
$action = isset($url[2]) ? $url[2] : 'index';
}
// 引入控制器文件
require(CONTROLLER_PATH . $controllerName . '.php');
// 實例化控制器
$controller = new $controllerName;
// 調用方法
$controller->$action();
<?php
class BaseController {
public function __construct() {
// 可以在這里進行初始化操作
}
}
<?php
class HomeController extends BaseController {
public function index() {
echo 'Hello, MVC!';
}
}
創建一個 models 文件夾,在里面放置相關的模型文件。
在瀏覽器中訪問 http://yourdomain.com/index.php 即可看到輸出 Hello, MVC!。
這樣就實現了一個簡易的MVC框架,當用戶訪問不同的 URL 時,會根據路由規則調度到對應的控制器和方法進行處理。當然,這只是一個簡單的示例,實際項目中還需要考慮更多的細節和功能實現。