《yii框架简介》ppt课件

上传人:tian****1990 文档编号:73000899 上传时间:2019-01-24 格式:PPT 页数:23 大小:3.49MB
返回 下载 相关 举报
《yii框架简介》ppt课件_第1页
第1页 / 共23页
《yii框架简介》ppt课件_第2页
第2页 / 共23页
《yii框架简介》ppt课件_第3页
第3页 / 共23页
《yii框架简介》ppt课件_第4页
第4页 / 共23页
《yii框架简介》ppt课件_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《《yii框架简介》ppt课件》由会员分享,可在线阅读,更多相关《《yii框架简介》ppt课件(23页珍藏版)》请在金锄头文库上搜索。

1、Yii框架简介,主要内容,Yii框架的起源 一个浏览器请求的处理过程 组件 过滤器 模型层 视图层 命令行程序,2,Yii框架的起源,美籍华人“qiang”于2008年1月开始开发YII框架(他原来是Prado框架的核心开发成员之一,维护该框架超过3年),YII框架的设计思想主要来源于( Prado , Ruby on Rails , jQuery , Symfony , Joomla ),http:/ 是一个基于组件、用于开发大型 Web 应用的高性能 PHP 框架。它将 Web 编程中的可重用性发挥到极致,能够显著加速开发进程。Yii(读作“易”)代表简单(easy)、高效(efficie

2、nt)、可扩展(extensible)。,3,支持的特性,http:/ 2、使用命令行工具创建项目 3、 创建控制类与action,http:/ help webapp yiic.bat webapp E:codeYiitrunkhelloword,yiic.bat shell E:codeYiitrunkhelloworldindex.php help controller post log cache db update detail add list,控制类与Action,FE同学可能对服务器端的技术与运行模式不太了解,其实一个网站是由若干个控制类组成(这次项目使用17个控制类),每个控

3、制类又有若干个action成员函数,用户的一个请求(不管是get/post/ajax)都是有一个action成员函数来处理,生成浏览器需要的html/json等,每个控制类有一个ControllerId:site,my,XX 每个Action有一个ActionId:index,login,collectdesc,8,url路由组件,1、通过用户输入的url找到处理这个请求的ControllerId和ActionId 2、解析出获得url中的get产生,http:/ http:/* 浏览器请求,路由组件 UrlManager,App类,日志组件,Db组件,Cache组件,权限组件,XX组件,1、

4、创建WebApplication 2、通过“路由组件”获得ControllerId和ActionId 3、创建“控制器” 4、运作Action方法,11,日志路由组件,1、记录一条日志,需要设置这2个维度的参数 Yii:log(悲剧,用户中心 挂了啊, CLogger:LEVEL_ERROR, extensions.uc);,2、通过“日志路由组件”可以过滤出某些错误级别、某些类别的日志,见log的routes配置,12,日志路由组件工作原理观察者模式,13,其它常用组件,Cache组件缓存作用 Db组件数据库查询 Auth认证组件基于角色的权限验证,组件特点,1、按需创建:如果一个组件在本次

5、用户请求中没有被使用,它根本不被创建。,2、单件模式:如果一个组件在多个地方使用,那么只有第一次使用的时候需要创建,以后每次使用,都是使用同一个组件对象,3、配置简单:通过修改app应用的components配置项可以很方便的对组件进行添加、删除和修改,14,过滤器与Action,1、过滤器是控制器的一个成员函数,以filter打头,比如function filterSpend( ),那么这个过滤器的名字就是spend,2、可被配置在控制器动作执行之前或之后执行,3、一个过滤器作用于多个Action,一个Action可以配置多个过滤器,配置很方便,15,过滤器工作模型,actionCache,

6、filterSpend,filterAjax,过滤器用途,1、统计:统计各个action每天被访问的次数,统计部分action的耗时,2、访问控制:指定某些action的必须是Ajax访问,指定某些action访问需要的权限或者角色,如上是本次项目的权限控制配置,16,模型层ORM,使用脚本创建模型层代码 cd E:codeYiitrunkhelloworldprotected yiic.bat shell E:codeYiitrunkhelloworldindex.php model *,17,ORM使用的是ActiveRecord技术 即一张表对应一个对象,基本不需要些sql http:/

7、127.0.0.1/helloworld/index.php/post/add 表之间的关联(1:1,1:n,n:1,n:m)通过relation来申明 http:/127.0.0.1/helloworld/index.php/post/list,视图层,视图层就是生成浏览器需要的html代码(中间可能包含js和css),Yii的将试图的生成分成3步,比如: http:/127.0.0.1/demos/blog/,目前使用模板引擎smarty,对于公共的页面片断使用include语法,18,小物件,在windows(MFC,Delphi,游戏)开发过程中,有很多小控件(下拉菜单/按钮/日历/人

8、物)可以使用,不需要从头开发。,19,小物件( Cwidget) 的设计思想与其类似,它将页面看成是有多个可以复用的控件组成,从而提高了页面控件的复用性和可维护性。,小物件的用法:widget(path.to.WidgetClass); ?,它会生成对应的html代码和需要的css以及js。Yii自带了20个左右的常用widget,开源社区目前也贡献了100多个widget。 小物件可以配置多套皮肤(国庆用红色的,清明用灰色的),代价:a)需要Fe会php,基本的php语法、类的使用 b)需要rd会一些简单的js和html,客户端脚本管理组件(Yii:app()-clientScript)的功

9、能: 1 ) 将js,css插入到固定的位置(HEAD/BEGIN/END/LOAD/READY) 2 ) 修改这个组件的配置,可以对js/css应用的路径进行替换或者合并,对外部透明,比如开发的使用使用home_dev.js,真正上线的时候使用home.js 3) 修改这个组件的配置,可以对js/css进行合并和进行版本控制,20,命令行,创建一个TotalCommand继承自CConsoleCommand 配置console.php中需要使用的组件,命令行程序创建的“app应用”是CConsoleApplication,web访问创建的应用时CWebApplication,其实“应用”时一个模板的概念,一个模板有一个组件池,可以配置这个模板需要的组件,21,cd E:codeYiitrunkhelloworldprotected yiic.bat 哈哈,所有的命令都有,系统的也有,系统其实也是写了一个XXCommand yiic.bat total user yiic.bat total post yiic.bat total comment,Yii作者推荐书籍(http:/ ,23,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号