Yii 2.0 框架学习笔记
文章平均质量分 78
介绍 Yii 2.0 框架的安装、目录结构,详细讲述 Yii 2.0 的 MVC 模式、组件、数据库交互、session、cookie、帮助类,以及缓存、日志组件的用法,依赖注入的思想等等。
lamp_yang_3533
你又可以了
展开
-
20. Yii 2.0 gii 代码生成器
gii 代码生成器就是一个生成代码文件的 web 工具,默认只在本地的开发环境中可以使用。 这里以 Yii 2.0 基础版为例,简单介绍一下 gii 代码生成器。 在项目配置文件 /basic/config/web.php 中,已经对 gii 进行了默认配置,相关代码如下: if (YII_ENV_DEV) { // configuration adjustmen原创 2016-09-08 22:53:26 · 1451 阅读 · 0 评论 -
19. Yii 2.0 数据分页
这里以 Yii 2.0 基础版为例,来介绍数据分页。 操作分页的类文件为 /basic/vendor/yiisoft/yii2/data/Pagination.php 首先,在 /basic/entity 目录中新建一个 User.php 文件,用于查询分页数据,代码如下: <?php namespace app\entity; use yii\data\Pag原创 2016-09-07 22:08:05 · 981 阅读 · 0 评论 -
18. Yii 2.0 依赖注入容器
三层架构:从高到底分别是用户界面层(UIL)、业务逻辑层(BLL)和数据访问层(DAL),传统的依赖关系是高层模块直接依赖于低层模块。 区分层次的目的是为了”高内聚、低耦合“的思想。 依赖倒置:高层模块不依赖于低层模块的实现,而是依赖于二者之间的抽象(接口)。 控制反转(Inversion of Control,简称 IoC) 控制反转是一种设计模式,它是工厂模式的升华原创 2016-09-06 21:20:24 · 954 阅读 · 0 评论 -
17. Yii 2.0 log组件
log组件主要用于记录程序运行过程中产生的异常(或错误)或 操作日志。 这里以 Yii 2.0 基础版为例,高级版类似。 Yii 封装的日志类文件位于 /vendor/yiisoft/yii2/log 目录下。 log组件支持的日志介质主要有 DbTarget.php、FileTarget.php、EmailTarget.php和SyslogTarget.php。 这里我们主要介绍原创 2016-09-05 22:33:43 · 1087 阅读 · 0 评论 -
16. Yii 2.0 http缓存
Yii 2.0 的 http缓存是基于http协议的,只对 GET 请求生效。 应用场景:如果我们的web服务器采用动静分离的技术,即客户端的页面请求只请求html页面框架(静态数据),而客户端的数据请求(动态数据)通过Ajax请求来实现,那么我们就可以将静态数据利用http缓存来实现。 http缓存的原理: 如果开启了http缓存,客户端浏览器请求服务器时,会给服务器发送一个 If原创 2016-09-04 11:45:08 · 1024 阅读 · 0 评论 -
15. Yii 2.0 页面缓存
页面缓存是将整个静态页面(一般是首页)进行缓存,也比较常用,一般采用 File 作为缓存介质。 页面缓存是将整个控制器方法的输出(整个页面),利用缓存介质缓存起来,页面缓存生效期间,改变指定方法(一般是缓存index方法)的输出,实际的输出并不会发生变化。 这里以 Yii 2.0 高级版为例,介绍页面缓存。 操作页面缓存的类文件为 /advanced/vendor/yii原创 2016-09-03 16:10:02 · 1622 阅读 · 2 评论 -
14. Yii 2.0 数据缓存
数据缓存是将某些数据(一般是查询的结果集)进行缓存,它是最常用的一种缓存方式,一般采用memcache或apc作为缓存介质。 这里以 Yii 2.0 高级版为例,介绍如何使用 Yii 的数据缓存机制(一般用 memcache 作为缓存介质),将及时性要求不高的数据缓存起来,提高页面的响应速度。 首先,修改数据库配置文件 /advanced/common/config/main-local.ph原创 2016-09-03 03:08:27 · 686 阅读 · 0 评论 -
13. Yii 2.0 缓存介质
Yii 2.0 框架对缓存的处理支持很多种方式,处理缓存的类文件所在的目录为:\vendor\yiisoft\yii2\caching,这里对一些常用的缓存处理类文件,作简单地说明: Cache.php:缓存介质的父类(基类)ApcCache.php: apc缓存,单台服务器最快的缓存介质,将数据存放在共享内存块中DbCache.php: 数据库缓存,将数据存放在数据库中FileCach原创 2016-08-31 21:21:57 · 670 阅读 · 0 评论 -
12. Yii 2.0 的帮助类
以 Yii 2.0 基础版为例,高级版类似。 常用的系统帮助类主要有:ArrayHelper、StringHelper、Url、Html、Json等。 Yii 2.0 框架的系统帮助类目录为 /basic/vendor/yiisoft/yii2/helpers,以 Base 开头的类文件为对应帮助类的基类(父类)。 如果想对某个帮助类里面的方法进行扩展,可以在 basic原创 2016-08-30 20:39:43 · 631 阅读 · 0 评论 -
11. Yii 2.0 Cookie
以 Yii 2.0 基础版为例来介绍 Yii 中是如何处理 cookie 的,高级版类似。 Yii 2.0 中对 cookie 进行了封装,类文件为 /basic/vendor/yiisoft/yii2/web 目录下的 Cookie.php 和 CookieCollection.php,一般我们会在此基础上对 cookie 进行二次封装。 在自定义组件目录 /basic/c原创 2016-08-29 22:58:15 · 697 阅读 · 0 评论 -
10. Yii 2.0 Session
以 Yii 2.0 基础版为例来介绍 Yii 中是如何处理session的,高级版类似。 Yii 2.0 中对session进行了封装,类文件为 /basic/vendor/yiisoft/yii2/web/Session.php,且已注册为内置组件(session),一般我们会在此基础上对 session 进行二次封装。 1. session 的 curd 操作 在自定义组原创 2016-08-28 22:37:34 · 911 阅读 · 0 评论 -
09. Yii 2.0 数据库交互 -读写分离
数据库读写分离技术,可用于缓解数据库服务器高并发所引起的问题。 常用的数据库读写分离技术,主要有以下几种: 一主多从多主多从强制读主 读操作:CRUD中的R操作(read),自多个从库读取数据。 写操作:CRUD中的CUD操作(create、update、delete),向主库写入数据。 主从复制:将主库的数据通过 binlog 日志(二进制日志)同步更新到从库。原创 2016-08-27 21:16:33 · 2559 阅读 · 0 评论 -
08. Yii 2.0 数据库交互 - AR
AR(Active Record 活跃记录) Yii 2.0 框架的 AR 类,是基于 ORM(Object Relation Mapping 对象关系映射)技术的,它提供了一个面向对象的接口, 用于访问数据库中的数据。 一个 AR 类关联一张数据表, 每个 AR 对象对应表中的一行,对象的属性(即 AR 的特性Attribute)映射到数据行的对应列。 一条活动记录(AR对象)对应数据表的一原创 2016-08-27 11:34:25 · 1056 阅读 · 0 评论 -
07. Yii 2.0 数据库交互 - Query Builder
Query Builder (查询构建器) 查询构建器建立在 Database Access Objects 基础之上,可让你创建 程序化的、DBMS(Database Management System 数据库管理系统,如:MySQL、ORACLE、MSSQL、DB2、ACCESS等)无关的SQL语句。相比于原生的SQL语句,查询构建器可以帮你写出可读性更强的SQL相关的代码,并生成安全性原创 2016-08-26 00:15:12 · 565 阅读 · 0 评论 -
06. Yii 2.0 数据库交互 - DAO
DAO(Data Access Objects 数据库访问对象) Yii 包含了一个建立在 PHP PDO 之上的数据访问层 (DAO)。DAO为不同的数据库提供了一套统一的API。 示例: 以 Yii 2.0 基础版为例,高级版类似。 首先,在 basic 目录下新建一个文件夹 entity,然后在 basic/entity 目录下新建 basicUser.php 文件,里面原创 2016-08-24 22:03:40 · 582 阅读 · 0 评论 -
05. Yii 2.0 的内部组件和自定义组件
1. 内部组件 Yii 2.0 框架中有很多内部组件,如:db(数据库)、session、cookie、gii、cache(缓存)、log、DI(依赖注入)等。 2. 自定义组件 以 Yii 2.0 基础版为例,高级版类似。 在 basic 目录下新建一个组件目录 components 作为自定义的组件目录,它与控制器目录同级。 在 basic/components 目录下新建一原创 2016-08-21 22:36:45 · 2695 阅读 · 0 评论 -
04. Yii 2.0 的MVC模式
下面都以 Yii 2.0 基础版(basic)为例,高级版类似。 1. 模型(Models) 模型是 MVC 模式中的一部分, 是代表业务数据、规则和逻辑的对象,可通过继承 yii\base\Model 或它的子类定义模型类。 在模型层创建模型,一般需要继承 yii\base\Model(模型基类)或它的子类。 如,在 basic/models 目录下创建一个模型 UserForm原创 2016-08-17 22:10:36 · 1089 阅读 · 0 评论 -
03. Yii 2.0 的配置文件
1. 常量配置 基础版: 在 basic/config 目录下,新建一个文件 const.php,作为定义常量的配置文件,内容如: define('SITE_URL', '/'); define('CSS_URL', SITE_URL.'css'); define('IMG_URL', SITE_URL.'img'); 然后,在 basic/web/index.ph原创 2016-08-12 23:39:42 · 651 阅读 · 0 评论 -
02. Yii 2.0 框架的目录结构
1. 项目的目录结构 基础版: basic 目录下的各个文件夹: commands 控制台 config 配置文件 console.php 控制台配置 db.php 数据库连接配置 params.php 项目中的变量配置原创 2016-08-11 21:34:48 · 6493 阅读 · 0 评论 -
01. Yii 2.0 框架的安装
1. Yii 概述 Yii Framework 是一个高性能的,适用于开发 WEB2.0 应用的 PHP 框架。 Yii 自带了丰富的功能 ,包括 MVC,DAO/ActiveRecord,I18N/L10N,缓存,身份验证和基于角色的访问控制,脚手架,测试等,可显著缩短开发时间。 Yii 是纯面向对象的,基于组件的,用于开发大型 Web 应用的高性能 PHP 框架。从面向对象的角度来说,它原创 2016-08-10 01:52:11 · 1559 阅读 · 0 评论