2.1 MVC简单实现-路由规则

本文介绍了如何利用PHP的$_SERVER['PATH_INFO']来处理URL路径信息,并展示了目录结构调整的过程,包括创建student目录及其子目录model、controller、view。通过示例代码展示了如何解析PATH_INFO,实现模块化路由,并在StudentController中调用模型和视图。文章还展示了如何在错误情况下终止请求。
摘要由CSDN通过智能技术生成
  • $_SERVER[‘PATH_INFO’]
  • public创建student目录,在student目录下创建model、controller、view目录

以前的目录:在这里插入图片描述
现在的目录:
在这里插入图片描述
$_SERVER[‘PATH_INFO’]的使用
index.php

<?php
$pathinfo = isset($_SERVER['PATH_INFO']) ? $_SERVER['PATH_INFO'] : ''; //Apache独有全局变量,nginx的另算
echo $pathinfo;

访问效果如下:
在这里插入图片描述

index.php 最终版

<?php
$pathinfo = isset($_SERVER['PATH_INFO']) ? $_SERVER['PATH_INFO'] : '';
if(!isset($pathinfo)){
exit("请求信息有误");
}
$arr = explode('/',trim($pathinfo,'/'));
list($module,$controller,$action) = $arr;
define('MODULE_PATH', $module.'/');
$controller_name =ucwords($controller).'Controller';
$controller_path = MODULE_PATH.'controller/'.$controller_name.'.php';

require $controller_path;
$obj = new $controller_name();
$obj->$action();

**StudentController.php

<?php
class StudentController
{
	
	public function index()
	{   //调用模型和视图
		require MODULE_PATH.'model/StudentModel.php';  //修改模型路径
		$model = new StudentModel();
		$data = $model->getAll();
		require MODULE_PATH.'view/student.html';       //修改视图路径
	}
}
?>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值