ThinkPHP的MVC开发机制实例解析


Posted in PHP onAugust 23, 2014

ThinkPHP是目前国内应用非常广泛的一款MVC开发框架。本文就以实例形式解析ThinkPHP的MVC开发机制。相信会给大家一定的启发作用。具体分析如下:

一、概述:

MVC框架解析如下:

M  Model层    模型:就是数据库操作类(通过数据库操作类去操作各个表)
       
V  View层     视图:指模版。
     
C  Control层  控制器:就是通过控制器来实现模版,模型之间的控制关系。

二、实例分析:

1.ACTION 控制器:

位置 D:\www\aoli\Home\Lib\Action\IndexAction.class.php

代码如下:

public function test() //访问路径:http://localhost/aoli/index.php/Index/test
  {
    $Test=D('Test');//实例化Model
    //$list=$Test->select();
    $list=$Test->query("select * from test" );
    $this->assign('list',$list);
    $this->assign('title','彭艳杰');
    $this->display();
  }
  public function index() //index对应aoli\Tpl\default\Index下的index.html
  {
    $this->display();
  }

2.MODEL 模型:

位置 D:\www\aoli\Home\Lib\Model\IndexModel.class.php

代码如下:

<?php
class TestModel extends Model{ //对应数据库中的表test
 //可在此处添加操作数据库表的类
}
?>

3.VIEW 视图:

位置 D:\www\aoli\Home\Tpl\default\Index\test.html

代码如下:

<p style=" font-weight:bold; line-height:22px;">{$title}</p>
 <div style=" color:#00F;">
  <volist name="list" id="vo">
   <p>{$vo.title} - {$vo.con}</p>
  </volist>
 </div>

感兴趣的朋友可以调试运行一下本文所述实例以加深理解。希望本文所述对于大家学习ThinkPHP有所帮助。

PHP 相关文章推荐
PHP新手上路(十)
Oct 09 PHP
再次研究下cache_lite
Feb 14 PHP
php过滤表单提交的html等危险代码
Nov 03 PHP
php使用str_replace实现输入框回车替换br的方法
Nov 24 PHP
php获取客户端电脑屏幕参数的方法
Jan 09 PHP
Symfony2开发之控制器用法实例分析
Feb 05 PHP
使用Composer安装Yii框架的方法
Mar 15 PHP
浅析Yii2中GridView常见操作
Apr 22 PHP
Yii2.0 模态弹出框+ajax提交表单
May 22 PHP
PHP实现对数组分页处理实例详解
Feb 07 PHP
深入理解PHP的远程多会话调试
Sep 21 PHP
PDO::inTransaction讲解
Jan 28 PHP
ThinkPHP中URL路径访问与模块控制器之间的关系
Aug 23 #PHP
ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结
Aug 23 #PHP
wamp安装后自定义配置的方法
Aug 23 #PHP
PHP中feof()函数实例测试
Aug 23 #PHP
PHP实现利用MySQL保存session的方法
Aug 23 #PHP
ThinkPHP后台首页index使用frameset时的注意事项分析
Aug 22 #PHP
ThinkPHP模板替换与系统常量及应用实例教程
Aug 22 #PHP
You might like
php的memcached客户端memcached
2011/06/14 PHP
php 5.6版本中编写一个PHP扩展的简单示例
2015/01/20 PHP
select 控制网页内容隐藏于显示的实现代码
2010/05/25 Javascript
JS实现多物体缓冲运动实例代码
2013/11/29 Javascript
JavaScript面向对象编程入门教程
2014/04/16 Javascript
jfreechart插件将数据展示成饼状图、柱状图和折线图
2015/04/13 Javascript
jQuery中animate动画第二次点击事件没反应
2015/05/07 Javascript
javascript通过获取html标签属性class实现多选项卡的方法
2015/07/27 Javascript
js实现文件上传表单域美化特效
2015/11/02 Javascript
JS动态给对象添加事件的简单方法
2016/07/19 Javascript
jQuery flip插件实现的翻牌效果示例【附demo源码下载】
2016/09/20 Javascript
如何学JavaScript?前辈的经验之谈
2016/12/28 Javascript
Angular的$http的ajax的请求操作(推荐)
2017/01/10 Javascript
Web纯前端“旭日图”实现元素周期表
2017/03/10 Javascript
Three.js利用orbit controls插件(轨道控制)控制模型交互动作详解
2017/09/25 Javascript
JavaScript中立即执行函数实例详解
2017/11/04 Javascript
详解原生JS回到顶部
2019/03/25 Javascript
js实现简单掷骰子小游戏
2019/10/24 Javascript
javascript json对象小技巧之键名作为变量用法分析
2019/11/11 Javascript
[02:30]DOTA2放量测试专访海涛:呼吁保护新手玩家
2013/08/26 DOTA
python 连接sqlite及简单操作
2017/06/30 Python
python实现可视化动态CPU性能监控
2018/06/21 Python
Kali Linux安装ipython2 和 ipython3的方法
2019/07/11 Python
pycharm创建scrapy项目教程及遇到的坑解析
2019/08/15 Python
Django 拆分model和view的实现方法
2019/08/16 Python
基于python实现matlab filter函数过程详解
2020/06/08 Python
Python字符串函数strip()原理及用法详解
2020/07/23 Python
瑞典手机壳品牌:Richmond & Finch
2018/04/28 全球购物
Hunkemöller瑞士网上商店:欧洲最大的内衣品牌之一
2018/12/03 全球购物
屈臣氏菲律宾官网:Watsons菲律宾
2020/06/30 全球购物
波兰多品牌运动商店:StreetStyle24.pl
2020/09/22 全球购物
《找不到快乐的波斯猫》教学反思
2014/02/24 职场文书
《那片绿绿的爬山虎》教学反思
2014/02/27 职场文书
创业计划书之密室逃脱
2019/11/08 职场文书
Mysql基础知识点汇总
2021/05/26 MySQL
Python Pygame实战在打砖块游戏的实现
2022/03/17 Python