原文:Thinkphp入门 一 (45)

什么是框架?

就是一堆代码的集合,这些代码可以有变量、常量、函数、类等等。这些代码彼此紧密联系,彼此有合作关系。里边还有设计模式:MVC、单例、工厂等等。

为什么学习框架?

1. 我们全部精力都可以集中在业务层次,可以节约60%左右的工作量

2. 这个功能体可以帮组我们快速、稳定、高效搭建程序系统

3. 系统的健壮、维护、灵活、适应客户需求方面得到大大加强

成熟框架

1  zendFramework  : 官方框架。重量

2  Yii:OOP   重量

3  cakephp: 中量

4  symfony  重量

5  CodeIgniter  轻量

6  ThinkPHP  轻量

7  等等,还有许多不知名的框架。

什么时候使用框架

1. 程序项目代码非常多,功能非常复杂。

2. 项目时间非常紧迫。

应用目录说明

  项目应用

  boke应用目录说明(程序运行后自动创建的目录)

应用的入口文件:

MVC设计模式

入口程序文件

C:控制器controller

V:视图view

M:模型 model

编译缓存文件~runtime.php

是tp框架为了性能考虑,把系统需要加载的许多文件,都给编译到一个文件里边了,这个文件就是~runtime.php,这样系统节省了许多文件打开、关闭的开销。

代码追踪:

1. index.php  入口

2. ThinkPHP.php

3. ThinkPHP/Common/runtime.php

4. Think::Start();   ThinkPHP/Lib/Core/Think.class.php

l  Think::buildApp()

l  App::run()    ThinkPHP/Lib/Core/App.class.php

5 App::run()

l  App::exec();

利用反射机制,实例化控制器对象,调用对应的方法

注意:

我们的css、js、img图片等网站资源,需要单独被访问到。

通过路由进行web请求

模板创建:

控制器调用模板显示内容:

  1. 通过display()调用具体模板
  2. 在Tpl目录创建下边创建对应的模板文件
  3. 修改模板文件的css和img图片目录 地址,css样式的图片地址修改
  4. 在入口文件index.php制作css、img、js常量供模板使用

现在的入口文件:

总结:

  1. 利用tp框架创建应用,制作入口文件(go/index.php)
  2. 创建多个控制器,参考index控制器。所有控制器有继承Action父类
  3. 通过控制器调用视图模板display()
  4. 展示模板内容

在Tpl下边创建模板

修改css、img对应目录地址

最新文章

  1. 共享onload事件
  2. fir.im Weekly - iOS/Android 应用程序架构解析
  3. Android实现Banner界面广告图片循环轮播(包括实现手动滑动循环)
  4. (转载)eclipse插件安装的四种方法
  5. hadoop启动之后出现错误:Retrying connect to server: hadoop/192.168.73.100:9000. Already tried 0 time(s);
  6. struts2+Hibernate4+spring3+EasyUI环境搭建之三:引入sututs2以及spring与sututs2整合
  7. 数论/the first wave
  8. iOS9适配
  9. cocos android分析
  10. poj 1041 John's trip 欧拉回路
  11. 利用PHP SOAP扩展实现简单Web Services
  12. IE6常见bug
  13. owa_outlook暴力破解脚本
  14. Away 3d 入门demo
  15. 微信小程序之----navigator页面跳转
  16. 3-14 JS基础知识01
  17. vs2013配置opencv环境
  18. 81. Search in Rotated Sorted Array II (中等)
  19. 「WC 2018」州区划分
  20. 第十三章:UNDO段

热门文章

  1. Android,机器狗应用
  2. PyQt中登录框设计
  3. USACO The Tamworth Two 模拟
  4. c++ namespace命名空间详解
  5. ubuntu rpm 包安装使用
  6. c++构造析构顺序
  7. Javascript DOM 02 在<ul>中创建、删除 <li>
  8. Arcgis镶嵌数据集java代码操作
  9. jsp页面中格式化为小数点两位
  10. ios qq 分享 失败