MVC运行原理-2019年10月31日
1、入口文件index.php
实例<?php
// 路由解析
$server = $_SERVER;
$script_name=$_SERVER['SCRIPT_NAME'];
$request_uri=$_SERVER['REQUEST_URI'];
// exit($script_name);
$path_info=str_replace($script_name, '', $request_uri);
// exit($request_uri);
// $path_info=$_SERVER['PATH_INFO'];// /home/index
$path=ltrim($path_info,'/');
//解析controller和method
$controller_method=explode('/',$path);
$controller_method[0]=ucfirst($controller_method[0]);
$controller=$controller_method[0];
$method=$controller_method[1];
require_once __DIR__.'/controller/'.$controller.'.php';
$obj=new $controller();
$res=$obj->$method();
exit($res);
运行实例 »点击 "运行实例" 按钮查看在线实例
2、Controller 文件Home.php
实例<?php
class Home{
public function index(){
require_once __DIR__.'/../view/index.php';
}
public function welcome(){
require_once __DIR__.'/../view/welcome.php';
}
}
运行实例 »点击 "运行实例" 按钮查看在线实例
3、 View 模板文件 index.php
实例<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>商味书屋——首页</title>
</head>
<body>
<div style="font-size:32px;text-align: center;color:red;">这里是商味书屋首页</div>
<?php echo date('Y-m-d H:i:s'); ?>
</body>
</html>
运行实例 »点击 "运行实例" 按钮查看在线实例
运行效果图