初识php MVC


Posted in PHP onSeptember 10, 2014

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

Mvc的工作流程:第一步 浏览者->调用控制器,对此发出指令

                    第二步 控制器->按指令选取一个合适的模型

                     第三步 模型->按照控制器指令选取相应的数据

                     第四步 控制器->按指令选取相应的视图

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

简单地实例开发如下,首先进行第一个控制器的开发 我们在此命名规范如下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 相关文章推荐
IIS+PHP+MySQL+Zend配置 (视频教程)
Dec 13 PHP
php daodb插入、更新与删除数据
Mar 19 PHP
PHP 动态生成静态HTML页面示例代码
Jan 15 PHP
基于preg_match_all采集后数据处理的一点心得笔记(编码转换和正则匹配)
Jan 31 PHP
wordpress安装过程中遇到中文乱码的处理方法
Apr 21 PHP
解决PHP里大量数据循环时内存耗尽的方法
Oct 10 PHP
php用户注册信息验证正则表达式
Nov 12 PHP
关于php中一些字符串总结
May 05 PHP
基于PHPexecl类生成复杂的报表表头示例
Oct 14 PHP
thinkPHP5.0框架独立配置与动态配置方法
Mar 17 PHP
laravel 5.1下php artisan migrate的使用注意事项总结
Jun 07 PHP
Thinkphp5.0 框架视图view的比较标签用法分析
Oct 12 PHP
叫你如何修改Nginx与PHP的文件上传大小限制
Sep 10 #PHP
QQ互联一键登录审核不通过的解决方案
Sep 10 #PHP
PHP curl 抓取AJAX异步内容示例
Sep 09 #PHP
php通过隐藏表单控件获取到前两个页面的url
Sep 09 #PHP
PHP利用MySQL保存session的实现思路及示例代码
Sep 09 #PHP
字符串长度函数strlen和mb_strlen的区别示例介绍
Sep 09 #PHP
thinkphp在模型中自动完成session赋值示例代码
Sep 09 #PHP
You might like
php discuz 主题表和回帖表的设计
2009/03/13 PHP
php session安全问题分析
2011/06/24 PHP
Thinkphp中Create方法深入探究
2014/06/16 PHP
PHP生成随机密码类分享
2014/06/25 PHP
PHP框架Laravel插件Pagination实现自定义分页
2020/04/22 PHP
PHP中的输出echo、print、printf、sprintf、print_r和var_dump的示例代码
2020/12/01 PHP
判断JavaScript对象是否可用的最正确方法分析
2008/10/03 Javascript
Javascript学习笔记9 prototype封装继承
2010/01/11 Javascript
简单实现兼容各大浏览器的js复制内容到剪切板
2015/09/09 Javascript
javascript伸缩菜单栏实现代码分享
2015/11/12 Javascript
jsonp跨域请求数据实现手机号码查询实例分析
2015/12/12 Javascript
原生JS实现风箱式demo,并封装了一个运动框架(实例代码)
2016/07/22 Javascript
Es6 写的文件import 起来解决方案详解
2016/12/13 Javascript
JS 组件系列之BootstrapTable的treegrid功能
2017/06/16 Javascript
JS实现的透明度渐变动画效果示例
2018/04/28 Javascript
node 命令方式启动修改端口的方法
2018/05/12 Javascript
实例介绍JavaScript中多种组合继承
2019/01/20 Javascript
Vue注册组件命名时不能用大写的原因浅析
2019/04/25 Javascript
Vue循环遍历选项赋值到对应控件的实现方法
2020/06/22 Javascript
VUE项目axios请求头更改Content-Type操作
2020/07/24 Javascript
vue mvvm数据响应实现
2020/11/11 Javascript
python通过floor函数舍弃小数位的方法
2015/03/17 Python
Python中的is和==比较两个对象的两种方法
2017/09/06 Python
Python数据类型之Tuple元组实例详解
2019/05/08 Python
keras自定义回调函数查看训练的loss和accuracy方式
2020/05/23 Python
基于django和dropzone.js实现上传文件
2020/11/24 Python
总经理岗位职责描述
2014/02/08 职场文书
怀念母亲教学反思
2014/04/28 职场文书
党干部专题民主生活会对照检查材料思想汇报
2014/10/06 职场文书
2014年消防工作总结
2014/11/21 职场文书
2014年秘书工作总结
2014/11/25 职场文书
2016年端午节校园广播稿
2015/12/18 职场文书
导游词之海南天涯海角
2019/12/05 职场文书
python利用while求100内的整数和方式
2021/11/07 Python
Html5同时支持多端sdk的小技巧
2021/11/17 HTML / CSS
讲解MySQL增删改操作
2022/05/06 MySQL