关于网上大多MVC的简介我就不再多说,就是Model(模型)View(视图) C(控制器)这里作为一个刚入门PHP MVC框架的我,这里我搭建一个最简易的mvc项目,从而理解MVC

1在apache服务器虾搭建项目文件体系

MyMVC

  Model

    model.php

  View

    index.php

  Control

    indexControl.php

index.php

在我们一般理解的路径中我们需要访问一个页面,例如A.php需要输入类似于localhost://demo/project/A.php这样的目录结构,访问B.php再输入localhost://demo/project/B.php

但是在MVC模式中,我们采用单一文件入口,即都从项目文件最外层的index.php开始,通过URL后带不同参数提交不同控制器,控制器再访问不同页面,下面通过一个案例来理解

1设计一个简易的PHP MVC模式,用户通过在URL种输入地址以及ID参数,即可查询该ID对应的学生姓名

学生数组为

ID

Name

01

Tom

02

Jack

03

Lisa

1搭建项目文件体系,文件体系和上面一样

2搭建模型层model.php,一般模型层负责处理数据,定义数据结构和属性,这里我们定义一个学生数组,并且定义一个访问数组方法,这个类似于javaweb中的javabean

<?php
class Model{
public $data=array(
'01'=>'Tom',
'02'=>'Jack',
'03'=>'Lisa',
);
public function getid($key){
return $this->data[$key];
}
}

3书写视图层View中index.php,index.php负责输出显示数据,注意我们需要通过不同ID来显示不同Name,所以index.php中定义的display()方法中应该接受一个动态的$output,

<?php
class Index{
public function display($output){
echo $output;
}
}

4配置单一入口文件index.php

<?php
require 'cont/control.php';//引入控制器文件
$ID=$_GET['ID'];
$show=new Control();
$show->showcontrol($ID);//调用控制器方法

5控制器文件control.php

<?php
class Control{
function showcontrol($ID){
require 'view/index.php';
require 'model/model.php';
$view=new Index();
$model=new Model();
$data=$model->getid($ID);
$view->display($data);

}
}

至此一个简单的PHP MVC项目搭建完成了!

在浏览器中输入http://localhost/demo/simpleMVC/index.php?ID=02即可!取得名字jack

实现最简单PHP MVC实例的更多相关文章

  1. 一个简单的MVC实例及故障排除

    Controller: public ActionResult Index() { string setting = "ApplicationServices"; var conn ...

  2. 【基础】一个简单的MVC实例及故障排除

    Controller: public ActionResult Index() { string setting = "ApplicationServices"; var conn ...

  3. 简单的spring mvc实例

    简单的springmvc实例 pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=&qu ...

  4. 自己动手写一个简单的MVC框架(第一版)

    一.MVC概念回顾 路由(Route).控制器(Controller).行为(Action).模型(Model).视图(View) 用一句简单地话来描述以上关键点: 路由(Route)就相当于一个公司 ...

  5. 审核流(3)低调奢华,简单不凡,实例演示-SNF.WorkFlow--SNF快速开发平台3.1

    下面我们就从什么都没有,结合审核流进行演示实例.从无到有如何快速完美的实现,然而如此简单.低调而奢华,简单而不凡. 从只有数据表通过SNF.CodeGenerator代码生成器快速生成单据并与审核流进 ...

  6. [.NET] 一步步打造一个简单的 MVC 网站 - BooksStore(一)

    一步步打造一个简单的 MVC 网站 - BooksStore(一) 本系列的 GitHub地址:https://github.com/liqingwen2015/Wen.BooksStore 简介 主 ...

  7. [.Net Core] 简单使用 Mvc 内置的 Ioc(续)

    简单使用 Mvc 内置的 Ioc(续) 本文基于 .NET Core 2.0. 上一章<[.Net Core] 简单使用 Mvc 内置的 Ioc>已经对日常 Mvc 中的 Ioc 的简单用 ...

  8. [.NET] 一步步打造一个简单的 MVC 电商网站 - BooksStore(一)

    一步步打造一个简单的 MVC 电商网站 - BooksStore(一) 本系列的 GitHub地址:https://github.com/liqingwen2015/Wen.BooksStore &l ...

  9. 使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(三)(错误整理篇)

    使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(一) 使用ssm(spring+springMVC+mybatis)创建一个简单的查询实例(二) 以上两篇已经把流 ...

随机推荐

  1. 推荐免费的svn空间

    可能大部分人跟我一样办公和其他环境的代码同步选择用github,但github免费用户的代码是公开的.如果想做商业项目,用免费的github账号就不合适了,这里推荐的免费svn是个不错的选择. 1.h ...

  2. 源于《Unity官方实例教程 “Space Shooter”》思路分析及相应扩展

    教程来源于:Unity官方实例教程 Space Shooter(一)-(五)       http://www.jianshu.com/p/8cc3a2109d3b 一.经验总结 教程中步骤清晰,并且 ...

  3. python中从文件中读取数据

    # average5.py def main(): fileName = input("What file are the numbers in?") infile = open( ...

  4. JS第二弹:用Jquery组装html标签,输出到页面

    用Ajax从服务端获取数据,遍历到表格中(其实将表格替换了),中间发现不能为新增的元素绑定事件,原来是没有将其作为JQ对象

  5. Java Map List 的使用

    项目中有一个需求是将年月分两行显示: java后台代码 创建一个demo,使用Map List 拆分年月: package demo; import java.util.ArrayList;impor ...

  6. 用ajax判断用户是否已存在?----2017-05-12

    首先在用ajax之前,先说一下JSON: JSON:javascript object notation   js对象标记 对于json,我们只需要知道如何定义json?如何输出?怎么遍历? 1.定义 ...

  7. 通过js给网页加上水印背景

    有些后端管理系统,因为业务逻辑的需要,需要加上水印,下面就是水印方法. function watermark(settings) { debugger; //默认设置 var defaultSetti ...

  8. SQL Server中INNER JOIN与子查询IN的性能测试

    这个月碰到几个人问我关于"SQL SERVER中INNER JOIN 与 IN两种写法的性能孰优孰劣?"这个问题.其实这个概括起来就是SQL Server中INNER JOIN与子 ...

  9. 写给Android App开发人员看的Android底层知识(4)

    (八)App内部的页面跳转 在介绍完App的启动流程后,我们发现,其实就是启动一个App的首页. 接下来我们看App内部页面的跳转. 从ActivityA跳转到ActivityB,其实可以把Activ ...

  10. [原创]MongoDB_Sharding

    Mongo Sharding:本示例搭建了三个副本集作为三个分片的sharding集群,其中master,slave,factershi三台同网段的内网主机.前期规划和原理分析省略,可根据具体配置推导 ...