php实现最简单的MVC框架实例教程


Posted in PHP onSeptember 08, 2014

本文以一个实例的形式讲述了PHP实现MVC框架的过程,比较浅显易懂。现分享给大家供大家参考之用。具体分析如下:

首先,在学习一个框架之前,基本上我们都需要知道什么是mvc,即model-view-control,说白了就是数据控制以及页面的分离实现,mvc就是这样应运而生的,mvc分为了三个层次,而且三个层次各司其职,互不干扰,首先简单介绍下,各个层次:view即是视图,也就是web页面,control即是控制器 向系统发出指令的工具,model 简单说是从数据库中取出数据进行处理。

MVC的工作流程如下:

1. 浏览者->调用控制器,对此发出指令

2. 控制器->按指令选取一个合适的模型

3. 模型->按照控制器指令选取相应的数据

4. 控制器->按指令选取相应的视图

5. 视图->把第三步取到的数据按用户想要的样子显示出来

简单地实例开发如下,首先进行第一个控制器的开发 我们在此命名规范如下testController.class.php

<?php
class testController{
function show(){
 
}
}
?>

其次书写一个简单地模型如下testModel.class.php

<?php
 
class testModel{
function get(){
return "hello world";
 
}
}
?>

第一个视图文件的创建testView.class.php 是为了呈现数据所存在的

<?php
class testVies{
  function display($data){
     echo $data;
 
  }
 }
?>

下面我们要做的就是按照之前所说的五步进行程序的测试:代码如下 测试文件的建立test.php

<?php
require_once('testController.class.php');
require_once('testModel.class.php');
require_once('testView.class.php');
$testController = new testController();//调用控制器
$testController->show();
?>
<?php
class testController{
  function show(){
      $testModel = new testModel();//选取合适的模型
      $data = $testModel->get();//获取相应的数据
      $testView = new testView();//选择相应的视图
      $testView->display($data);//展示给用户
  }
}
?>

而后我们浏览器打开test.php 会显示为hello world,说明我们已经成功了。

注:本文实例仅为框架结构,具体的功能读者可以自行添加。希望本文所述实例对大家PHP程序设计框架的学习有所帮助。

PHP 相关文章推荐
PHP也可以?成Shell Script
Oct 09 PHP
PHP4 与 MySQL 数据库操作函数详解
Oct 09 PHP
php模拟js函数unescape的函数代码
Oct 20 PHP
PHP Error与Logging函数的深入理解
Jun 03 PHP
php实现过滤字符串中的中文和数字实例
Jul 29 PHP
Smarty模板变量调节器用法分析
May 23 PHP
PHP中FTP相关函数小结
Jul 15 PHP
你不知道的文件上传漏洞php代码分析
Sep 29 PHP
PHP对象实例化单例方法
Jan 19 PHP
浅谈PHP发送HTTP请求的几种方式
Jul 25 PHP
PHP高效获取远程图片尺寸和大小的实现方法
Oct 20 PHP
PHP开发的文字水印,缩略图,图片水印实现类与用法示例
Apr 12 PHP
PHP基本语法总结
Sep 06 #PHP
php中的mongodb select常用操作代码示例
Sep 06 #PHP
CodeIgniter错误mysql_connect(): No such file or directory解决方法
Sep 06 #PHP
使用PHP和HTML5 FormData实现无刷新文件上传教程
Sep 06 #PHP
Windows下的PHP 5.3.x安装 Zend Guard Loader教程
Sep 06 #PHP
php获取一个变量的名字的方法
Sep 05 #PHP
Yii使用find findAll查找出指定字段的实现方法
Sep 05 #PHP
You might like
也谈截取首页新闻 - 范例
2006/10/09 PHP
ThinkPHP设置禁止百度等搜索引擎转码(简单实用)
2016/02/15 PHP
PHP实现基于mysqli的Model基类完整实例
2016/04/08 PHP
thinkphp验证码的实现(form、ajax实现验证)
2016/07/28 PHP
php ajax数据传输和响应方法
2018/08/21 PHP
javascript event 事件解析
2011/01/31 Javascript
封装了一个js图片轮换效果的函数
2011/09/28 Javascript
IE6-IE9不支持table.innerHTML的解决方法分享
2012/09/14 Javascript
ajax页面无刷新 IE下遭遇Ajax缓存导致数据不更新的问题
2012/12/11 Javascript
脚本合并提升javascript性能示例
2014/02/24 Javascript
深入理解javascript中的立即执行函数(function(){…})()
2014/06/12 Javascript
JavaScript列表框listbox全选和反选的实现方法
2015/03/18 Javascript
jquery实现多条件筛选特效代码分享
2015/08/28 Javascript
深入理解JavaScript中的浮点数
2016/05/18 Javascript
使用jQuery操作DOM的方法小结
2017/02/27 Javascript
JavaScript 过滤关键字
2017/03/20 Javascript
node.js 抓取代理ip实例代码
2017/04/30 Javascript
在百度搜索结果中去除掉一些网站的资料(通过js控制不让显示)
2017/05/02 Javascript
基于Vue中点击组件外关闭组件的实现方法
2018/03/06 Javascript
原生JS实现随机点名项目的实例代码
2019/04/30 Javascript
JavaScript中this的全面解析及常见实例
2019/05/14 Javascript
Python中的XML库4Suite Server的介绍
2015/04/14 Python
在Python中使用HTML模版的教程
2015/04/29 Python
Python的Django框架中的URL配置与松耦合
2015/07/15 Python
使用pyecharts无法import Bar的解决方案
2020/04/23 Python
Python爬取当当、京东、亚马逊图书信息代码实例
2017/12/09 Python
Python-接口开发入门解析
2019/08/01 Python
Python接口自动化测试的实现
2020/08/28 Python
matplotlib相关系统目录获取方式小结
2021/02/03 Python
详解HTML5.2版本带来的修改
2020/05/06 HTML / CSS
澳大利亚床上用品、浴巾和家居用品购物网站:Bambury
2020/04/16 全球购物
在浏览器端如何得到服务器端响应的XML数据
2012/11/24 面试题
商场中秋节广播稿
2014/01/17 职场文书
聊聊pytorch测试的时候为何要加上model.eval()
2021/05/23 Python
vscode中使用npm安装babel的方法
2021/08/02 Javascript
MySql数据库 查询时间序列间隔
2022/05/11 MySQL