Yii2.0起步
Yii2.0是一个关于PHP的框架,可以在下面两个网站进行学习:(注意,最高版本必须支持PHP5.4.0)
一·Yii2.0有两种安装形式:
1.采用composer进行安装,如果熟悉了,一般都是用这种方式操作
2.采用下载归档文件的形式进行
其中基本应用程序模板和高级应用程序模板的区别在于是否具有基本布局。
二·Yii2.0的部署方式
1.这里采用第二种形式,下载下来的文件,进行解压,我这里用基本应用模板即可,
2.然后解压完以后将目录改名字即可放到tomcat中,
3.修改config文件夹的web.php文件,其中有个components的参数,有个必选项叫做request,这个官方注释是用来验证Cookie的密钥。
4.然后发布程序,第一个yii程序就这样部署完成了。
三·Yii2.0目录文件说明(分类说明)
1、基本常用的,也就是MVC模式,既:
controllers/ 控制器类
models/ 模型类
views/ 视图文件
2.比较常用的
commands/ 控制台命令类
tests/ 测试相关的文件
assests/ 资源文件
3.必须的,但是基本上配置完了就不需要怎么动的
config/ 应用配置及其它配置
web/ WEB应用根目录,包含web入口文件
assets/ 资源文件(Javascript和css)
index.php 应用入口文件(也就是一切的开始)
4.上线的时候和扩展用的
runtime/ 运行时生成的,例如日志和缓存等文件,可以进行线上排错
vendor/ Yii框架自身及第三方扩展
5.一般不怎么修改的
yii Yii控制台命令执行脚本
四·Yii2.0关键概念
1.请求生命周期:用户点击->入口文件->进行配置的加载->启动应用(第一步完成)
解析路由(通过处理组件进行解析)->创建控制器(C)(第二步完成,下面是开启MVC模式)
在控制器里面创建动作,既action->执行过滤条件,或者逻辑条件->进行加载数据,或者数据的获取(->在模型中操作数据库,既M)->渲染视图(既V)->完成响应->返回给用户
2.入口脚本解析:
1.入口脚本是打开每一个网页的入口,也就是一切的根本出发点,一般是用index.php命名,放在web目录下,并且有且只有一个
2.作用:
a.定义全局变量
b.注册Composer自动加载器
c.包含Yii类文件
d.加载应用配置
e.创建一个应用实例并配置
f.调用yii\base\Application::run()来处理请求
3.应用主体
1.是管理Yii应用系统整体结构和生命周期的对象
2.是yii\web\Application类的实例
3.可以用\Yii::$app来访问应用
五·Yii2.0的MVC模式
1.控制器
a.从yii\web\Contoller继承来的
b.负责处理请求和生成响应
c.控制器主要由动作组成,既action开头的函数
d.一个动作对应一个方法
e.render()方法的作用:
public String render($view,$params=[])
a).$view指的是视图
b).$params指的是传给视图的数据
c).返回的是字符串,就是渲染的结果
d).视图或布局文件不存在的时候会抛出异常
2.模型
a.模型就是做一些数据的处理,或者说逻辑处理
b.后面详细介绍
3.视图
a.就是view,也就是反映到用户上是一个界面
b.视图是在yii\web\View应用组件的帮助下,依据视图模板文件,进行构造和渲染完成的
c.习惯上称视图模板文件为视图
d.视图模板文件主要由html和展示类的php组成
e.视图的布局:
a).布局是特殊的视图,表现为多个视图的公共部分
b).布局也是视图,它可以像普通视图一样创建布局,默认存储在@app/views/layouts里面
c).默认会使用@app/views/layouts/main.php布局文件,要变换布局,设置控制器的属性:public $layout = 'wx';
d).$this和$content的区别是,$this指向yii\web\View来管理和渲染这个视图文件,$content是视图模板文件渲染的结果
(注释,下面边学边记录,有不对的可以讨论)