Cara memuatkan kelas berdasarkan URL cantik dalam halaman Model View Controller (MVC)
Soalan: Bagaimana untuk memuatkan kelas berdasarkan pengawal Berkembang secara dinamik dengan kategori baharu yang terdiri daripada URL cantik?
Penyelesaian:
Untuk menyelesaikan isu ini, langkah berikut perlu diambil:
Berikut ialah kod contoh untuk memuatkan kelas secara dinamik terhadap URL yang cantik:
// 注册自动加载器 spl_autoload_register(function ($name) { $path = 'path/to/classes'; $filename = $path . '/' . $name . '.php'; if (file_exists($filename)) { require $filename; return true; } return false; }); // 使用路由表匹配 URL $routes = [ '/{resource}/foobar' => ['controller' => 'FoobarController', 'action' => 'index'], '/{resource}' => ['controller' => 'ResourceController', 'action' => 'show'], ]; $url = $_SERVER['REQUEST_URI']; foreach ($routes as $pattern => $route) { if (preg_match($pattern, $url, $matches)) { $controller = $route['controller']; $action = $route['action']; break; } } // 调用控制器方法 if (isset($controller) && isset($action)) { $controller = new $controller; $controller->$action($matches); } else { // Handle 404 }
Atas ialah kandungan terperinci Bagaimana untuk Memuatkan Kelas Secara Dinamik Berdasarkan URL Cantik dalam Rangka Kerja MVC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!