PHP之简单实现MVC框架

简介: PHP之简单实现MVC框架   1.概述   MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。

PHP之简单实现MVC框架

 

1.概述

  MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。

2.代码结构

3.代码实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
         //function.php 
     //控制器调用函数
     function  C( $name $method ){
         require_once ( 'libs/Controller/' . $name . 'Controller.class.php' );
         //$testController = new testController();
         //$testController->show();
         eval ( '$obj = new ' . $name . 'Controller(); $obj->' . $method . '();' );
     }
 
     //模型调用函数
     function  M( $name ){
         require_once ( 'libs/Model/' . $name . 'Model.class.php' );
         eval ( '$obj = new ' . $name . 'Model();' );
         return  $obj ;
     }
 
     //视图调用函数
     function  V( $name ){
         require_once ( 'libs/View/' . $name . 'View.class.php' );
         eval ( '$obj = new ' . $name . 'View();' );
         return  $obj ;
     }
 
     //过滤非法值
     function  daddslashes( $str ){
         return  (!get_magic_quotes_gpc())? addslashes ( $str ): $str ;
     }
?>

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
//test.php
/*
第一步 浏览者 -> 调用控制器,对它发出指令
第二步 控制器 -> 按指令选取一个合适的模型
第三步 模型 -> 按控制器指令取相应数据
第四步 控制器 -> 按指令选取相应视图
第五步 视图 -> 把第三步取到的数据按用户想要的样子显示出来
*/
 
require_once ( 'View/testView.class.php' );
require_once ( 'Model/testModel.class.php' );
require_once ( 'Controller/testController.class.php' );
 
$testController  new  testController();
$testController ->show();
?>

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
//testController.class.php
/*
控制器的作用是调用模型,并调用视图,将模型产生的数据传递给视图,并让相关视图去显示
*/
     class  testController{
         function  show(){
             /*$testModel = new testModel();
             $data = $testModel->get();
             $testView = new testView();
             $testView->display($data);*/
             $testModel  = M( 'test' );
             $data  $testModel ->get();
             $testView  = V( 'test' );
             $testView ->display( $data );
         }
     }
?>

 

1
2
3
4
5
6
7
8
9
10
11
<?php
//testModel.class.php
/*
模型的作用是获取数据并处理,返回数据
*/
     class  testModel{
         function  get(){
             return  "hello world" ;
         }
     }
?>

 

1
2
3
4
5
6
7
8
9
10
11
<?php
//testView.class.php
/*
视图的作用是将获得的数据进行组织,美化等,并最终向用户终端输出
*/
     class  testView{
         function  display( $data ){
             echo  $data ;
         }
     }
?>

 运行结果:

 
分类:  PHP
目录
相关文章
|
1天前
|
缓存 安全 前端开发
php框架
【7月更文挑战第14天】php框架
10 2
|
1天前
|
测试技术 PHP 数据库
深入解析PHP框架:Symfony框架详解与应用
📚 Symfony框架深度解析:模块化设计提升开发效率,性能优越,灵活性高,支持MVC模式。探索控制器、路由、模板(如Twig)、服务容器、事件调度器等核心概念。还包括表单处理、数据库集成( Doctrine ORM)、安全组件、国际化支持及调试工具。使用Symfony CLI快速创建应用,内置PHPUnit测试支持。开始你的高质量Web开发之旅吧!
9 2
|
5天前
|
缓存 中间件 API
PHP框架详解 - Laravel 框架
PHP框架详解 - Laravel 框架
|
5天前
|
设计模式 前端开发 PHP
PHP框架详解 - CodeIgniter 框架
PHP框架详解 - CodeIgniter 框架
|
5天前
|
存储 中间件 API
PHP框架详解 - Slim 框架
PHP框架详解 - Slim 框架
|
5天前
|
前端开发 数据库连接 PHP
PHP框架详解 - Zend Framework框架
PHP框架详解 - Zend Framework框架
|
5天前
|
设计模式 前端开发 关系型数据库
PHP框架详解 - CakePHP框架
PHP框架详解 - CakePHP框架
|
5天前
|
安全 前端开发 API
PHP框架详解 - ThinkPHP框架
PHP框架详解 - ThinkPHP框架
|
5天前
|
设计模式 前端开发 PHP
PHP框架有哪些,以及具体对比优缺点
PHP框架有哪些,以及具体对比优缺点
|
5天前
|
存储 缓存 安全
PHP框架详解 - symfony框架
PHP框架详解 - symfony框架