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

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

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

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

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

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

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

1
2
3
4
5
6
7
8
9
10
11
<?php
 
 class testController{
 
function show(){
 
}
 
 }
 
?>

  

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

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
 
class testModel{
 
function get(){
 
return "hello world";
 
}
 
}
 
?>

  

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

1
2
3
4
5
6
7
8
9
10
11
12
<?php
class testVies{
 
    function display($data){
 
         echo $data;
 
    }
 
 }
 
?>       

  

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

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
30
31
32
33
<?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);//展示给用户
 
   }
 
}
 
?>

PHP MVC的更多相关文章

  1. Asp.Net Mvc 使用WebUploader 多图片上传

    来博客园有一个月了,哈哈.在这里学到了很多东西.今天也来试着分享一下学到的东西.希望能和大家做朋友共同进步. 最近由于项目需要上传多张图片,对于我这只菜鸟来说,以前上传图片都是直接拖得控件啊,而且还是 ...

  2. .Net Core MVC 网站开发(Ninesky) 2.4、添加栏目与异步方法

    在2.3中完成依赖注入后,这次主要实现栏目的添加功能.按照前面思路栏目有三种类型,常规栏目即可以添加子栏目也可以选择是否添加内容,内容又可以分文章或其他类型,所以还要添加一个模块功能.这次主要实现栏目 ...

  3. ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库

    在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...

  4. ASP.NET Core MVC/WebAPi 模型绑定探索

    前言 相信一直关注我的园友都知道,我写的博文都没有特别枯燥理论性的东西,主要是当每开启一门新的技术之旅时,刚开始就直接去看底层实现原理,第一会感觉索然无味,第二也不明白到底为何要这样做,所以只有当你用 ...

  5. ASP.NET Core 中文文档 第四章 MVC(3.8)视图中的依赖注入

    原文:Dependency injection into views 作者:Steve Smith 翻译:姚阿勇(Dr.Yao) 校对:孟帅洋(书缘) ASP.NET Core 支持在视图中使用 依赖 ...

  6. 开源:Taurus.MVC 框架

    为什么要创造Taurus.MVC: 记得被上一家公司忽悠去负责公司电商平台的时候,情况是这样的: 项目原版是外包给第三方的,使用:WebForm+NHibernate,代码不堪入目,Bug无限,经常点 ...

  7. Taurus.MVC 2.2 开源发布:WebAPI 功能增强(请求跨域及Json转换)

    背景: 1:有用户反馈了关于跨域请求的问题. 2:有用户反馈了参数获取的问题. 3:JsonHelper的增强. 在综合上面的条件下,有了2.2版本的更新,也因此写了此文. 开源地址: https:/ ...

  8. Taurus.MVC 2.0 开源发布:WebAPI开发教程

    背景: 有用户反映,Tausus.MVC 能写WebAPI么? 能! 教程呢? 嗯,木有! 好吧,刚好2.0出来,就带上WEBAPI教程了! 开源地址: https://github.com/cyq1 ...

  9. 使用Visual Studio 2015 开发ASP.NET MVC 5 项目部署到Mono/Jexus

    最新的Mono 4.4已经支持运行asp.net mvc5项目,有的同学听了这句话就兴高采烈的拿起Visual Studio 2015创建了一个mvc 5的项目,然后部署到Mono上,浏览下发现一堆错 ...

  10. .NetCore MVC中的路由(2)在路由中使用约束

    p { margin-bottom: 0.25cm; direction: ltr; color: #000000; line-height: 120%; orphans: 2; widows: 2 ...

随机推荐

  1. [转]SPICE仿真软件基础(整理)

    现在常用的SPICE仿真软件为方便用户使用都提供了较好的用户界面,在用仿真库中的元器件连成原理图后就可以进行仿真(当然要设置必要的仿真参数),但实际上只是用原理图自动产生了SPICE的格式语句,还是要 ...

  2. ie8 window.open导出文件报错

    js创建一个<a>元素hiddenElementhiddenElement.setAttribute('href','')hiddenElement.setAttribute('targe ...

  3. Javascript常用对象的属性和方法

    javascript为我们提供了一些非常有用的常用内部对象和方法.用户不需要用脚本来实现这些功能.这正是基于对象编程的真正目的. 在javascript提供了string(字符串).math(数值计算 ...

  4. Linux学习 : 裸板调试 之 配置UART

    1.UART原理说明 发送数据时,CPU将并行数据写入UART,UART按照一定的格式在一根电线上串行发出:接收数据时,UART检测另一根电线上的信号,串行收集然后放在缓冲区中,CPU即可读取UART ...

  5. 一个自定义控件的Demo

    里面包括Button.Checkbock.listview.popupwindow的自定义 import android.app.Activity; import android.content.In ...

  6. 基于WWF搭建的通用审批流程

    月明星稀,却不见明月:蛾儿雪柳暗香飘过,纵使回首千百回,却不知,心已灭:壮志未酬,却落得个多情应该笑我:扬帆起航,却不知,帆已破.这是我刚离职时的心情,曾几何时,真的想呆在一家公司,做一名优秀的技术管 ...

  7. It will affect staff as well.

    Premier Foods has reduced its number of suppliers dramatically in the last 12 months. In 2013 it mad ...

  8. Large Margin DAGs for Multiclass Classification

    Abstract We present a new learning architecture: the Decision Directed Acyclic Graph (DDAG), which i ...

  9. 开源一个网络图片浏览器HooPhotoBrowser

    在公司开发项目中需要弹出展示从网络上下载的图片,并提供滑动展示功能.目前采用同事开发的图片浏览器,后期有时间想优化一下.所以重温了下以前开发的类似微博的项目中的图片浏览器代码,并抽取出来封装成了现在这 ...

  10. 封装captcha类 -- 画图四

    <?php // 验证码类 class Captcha{ //属性 private $width; private $height; private $length; private $line ...