阅读量:0
当然有!下面是一个简单的PHP路由案例,使用了内置的$_SERVER['REQUEST_URI']
变量来解析请求的URI,并根据URI调用相应的控制器方法。
<?php // 路由定义 $routes = [ '/' => 'HomeController@index', '/about' => 'AboutController@index', '/contact' => 'ContactController@index', ]; // 路由解析 $requestUri = $_SERVER['REQUEST_URI']; $routeFound = false; $controllerMethod = ''; foreach ($routes as $route => $handler) { if (strpos($requestUri, $route) === 0) { $routeFound = true; list($controller, $method) = explode('@', $handler); break; } } // 路由处理 if ($routeFound) { // 调用控制器方法 $controllerInstance = new $controller(); call_user_func_array([$controllerInstance, $method], []); } else { // 处理404错误 echo '404 Not Found'; } ?>
在这个例子中,我们定义了三个路由:/
、/about
和/contact
,分别对应HomeController
、AboutController
和ContactController
的index
方法。当用户访问这些URL时,PHP脚本会解析请求的URI,并根据URI调用相应的控制器方法。
请注意,这个例子仅用于演示目的,实际项目中通常会使用更复杂的路由系统,例如Laravel框架中的路由系统。