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请求


模板创建:

控制器调用模板显示内容:
- 通过display()调用具体模板
- 在Tpl目录创建下边创建对应的模板文件
- 修改模板文件的css和img图片目录 地址,css样式的图片地址修改
- 在入口文件index.php制作css、img、js常量供模板使用
现在的入口文件:

总结:
- 利用tp框架创建应用,制作入口文件(go/index.php)
- 创建多个控制器,参考index控制器。所有控制器有继承Action父类
- 通过控制器调用视图模板display()
- 展示模板内容
在Tpl下边创建模板
修改css、img对应目录地址
Thinkphp入门 一 (45)的更多相关文章
- Thinkphp入门 四 —布局、缓存、系统变量 (48)
原文:Thinkphp入门 四 -布局.缓存.系统变量 (48) [控制器操作方法参数设置] http://网址/index.php/控制器/操作方法 [页面跳转] [变量调节器] Smarty变量调 ...
- Thinkphp入门 五 —模型 (49)
原文:Thinkphp入门 五 -模型 (49) [数据库操作model模型] model 模型 数据库操作 tp框架主要设计模式:MVC C:controller 控制器 shop/Li ...
- Thinkphp入门三—框架模板、变量(47)
原文:Thinkphp入门三-框架模板.变量(47) [在控制器调用模板] display() 调用当前操作名称的模板 display(‘名字’) 调用指定名字的模板文件 控制器调用模板四种方式 ...
- Thinkphp入门 二 —空操作、空模块、模块分组、前置操作、后置操作、跨模块调用(46)
原文:Thinkphp入门 二 -空操作.空模块.模块分组.前置操作.后置操作.跨模块调用(46) [空操作处理] 看下列图: 实际情况:我们的User控制器没有hello()这个方法 一个对象去访问 ...
- thinkPHP入门 一
简介 ThinkPHP是一个快速.简单的基于MVC和面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布,从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,尤其注重开 ...
- thinkPHP入门之二
thinkphp提供了很多便利的方法,因为php要记的东西太多了,而thinkphp极大简化了这些,让编写过程更加快速. 为了预防那些了解它的人胡乱玩耍,thinkphp提供一个函数_empty 它是 ...
- thinkPHP入门
什么是框架 框架就是一定结构的代码,框架提供一个开发web程序的基础架构以及常用的功能 代码,PHP框架的web程序开发拜倒了流水线上. php框架就是一定要按别人规定好的架构编写. php开发框架有 ...
- ThinkPHP入门(二)
smarty使用 smarty引入流程 1. 控制器IndexAction.class.php function index() $this -> display(); (父类Action的di ...
- 3.ThinkPHP入门---视图
视图:MVC三大组成部分,负责信息的展示和输出 1.视图的创建 创建的位置需要是在分组目录下的view目录下余控制器同名的目录中. 2.视图的展示 在smarty和tinkphp都是使用diaplay ...
随机推荐
- Oracle AWR 报告详解
转自:http://blog.csdn.net/laoshangxyc/article/details/8615187 持续更新中... Oracle awr报告详解 DB Name DB Id In ...
- 将时间显示为“刚刚”“n分钟/小时前”等
在很多场合为了显示出信息的及时性,一般会将时间显示成“刚刚”,“5分钟前”,“3小时前”等,而不是直接将时间打印出来.比如微博,SNS类应用就最长用到这个功能.而一般存储在数据库中的时间格式为 Uni ...
- Python基础1:一些小知识汇总
一.#!usr/bin/env python 脚本语言的第一行,指定执行脚本的解释器. #!/usr/bin/python 是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python解释器 ...
- Ant学习实例
ant 目录(?)[+] Ant学习实例 安装Ant 基础元素 project元素 target元素 property元素 完整示例 Ant学习实例 1.安装Ant 先从http://ant. ...
- ZooKeeper - Perl bindings for Apache ZooKeeper Perl绑定用于 Apache ZooKeeper
ZooKeeper - Perl bindings for Apache ZooKeeper Perl绑定用于 Apache ZooKeeper 监控 master/slave 需要使用zk的临时节点 ...
- hdu 4736 This Is The Job The Bear Finds(2013年成都ACM网络赛)
// Time 1718 ms; Memory 1500 K #include<iostream> #include<cstdio> #include<cmath> ...
- arm:c语言和汇编混合编程
仅作演示. 1.C和汇编可相互调用,汇编子函数格式参考 汇编:普通的函数调用的汇编代码解析 http://www.cnblogs.com/mylinux/p/4139972.html 本文演示了 : ...
- C++算术运算符与算术表达式
基本的算术运算符 在本章中主要介绍算术运算符与算术表达式,赋值运算符与赋值表达式,逗号运算符与逗号表达式,其他运算符将在以后各章中陆续介绍. 常见算数运算符 运算符 说明 举例 + 加法运算符,或正值 ...
- jQuery手写几个常见的滑动下拉菜单 分分秒秒学习JS
一般的企业网站再我们再实际工作中,有些特效,用jQuery来做,显得极其简单,除非一些大的公司,需要封装自己的类. 今天,我们讲解jQuery入门知识,来写几个简单jQuery滑动下拉菜单.感受一下j ...
- WCF技术剖析之二十七: 如何将一个服务发布成WSDL[编程篇]
原文:WCF技术剖析之二十七: 如何将一个服务发布成WSDL[编程篇] 对于WCF服务端元数据架构体系来说,通过MetadataExporter将服务的终结点导出成MetadataSet(参考< ...