随笔分类 -  Yii

Yii框架学习笔记、总结。
摘要:yii开发的项目需要使用定时任务其实也可以使用一些单独的脚本文件来完成,但若是定时任务代码中需要使用到项目中的一些类,特别是需要使用应用对象Yii::$app的时候,单独的脚本想要完成就比较麻烦了。这时候,别忘了yii除了backend和frontend之外,还有console。是的,在yii项目中 阅读全文
posted @ 2018-01-11 15:07 疯一样的狼人 阅读(658) 评论(0) 推荐(0) 编辑
摘要:今天本来打算研究一下yii2.0的AR模型的实现原理,然而,计划赶不上变化,突然就想先研究一下yii2.0的数据库组件创建的过程。通过对yii源码的学习,了解了yii组件注册与创建的过程,并发现原来yii组件注册之后并不是马上就去创建的,而是待到实际需要使用某个组件的时候再去创建对应的组件实例的。本 阅读全文
posted @ 2017-10-27 20:48 疯一样的狼人 阅读(3577) 评论(0) 推荐(2) 编辑
摘要:一、为什么需要依赖注入 首先我们先不管什么是依赖注入,先来分析一下没有使用依赖注入会有什么样的结果。假设我们有一个gmail邮件服务类GMail,然后有另一个类User,User类需要使用发邮件的功能,于是我们在User类中定义一个成员变量$mailServer,并且在声明这个变量的时候就给它赋值一 阅读全文
posted @ 2017-09-14 13:10 疯一样的狼人 阅读(4765) 评论(0) 推荐(2) 编辑
摘要:在yii中,程序中需要使用到的类无需事先加载其类文件,在使用的时候才自动定位类文件位置并加载之,这么高效的运行方式得益于yii的类自动加载机制。 Yii的类自动加载实际上使用的是PHP的类自动加载,所以先来看看PHP的类自动加载。在PHP中,当程序中使用的类未加载时,在报错之前会先调用魔术方法__a 阅读全文
posted @ 2017-09-12 20:52 疯一样的狼人 阅读(2116) 评论(0) 推荐(1) 编辑
摘要:Yii三大特性:属性、事件、行为。前面两篇文章已经分别讲解了属性和事件,本文接着讲讲yii的行为,分析yii行为的实现原理。 在yii中,一个对象绑定了行为之后,就拥有了所绑定行为拥有的所有事件,而且可以访问所绑定行为的成员变量,调用其行为方法。那么,yii是怎么做到的呢? Yii中行为的实现需要y 阅读全文
posted @ 2017-09-11 17:32 疯一样的狼人 阅读(1881) 评论(0) 推荐(0) 编辑
摘要:众所周知,yii的三大特性是:属性、事件、行为,上一篇博文简单讲解了yii中的属性,本文接着讲讲yii的事件。 事件是代码解耦的一种方式,设计业务流程的一种模式。在yii2.0中,通过Yii\base\Component继承yii\base\Object,重载__get()、__set()方法,引入 阅读全文
posted @ 2017-09-08 16:38 疯一样的狼人 阅读(2222) 评论(0) 推荐(1) 编辑
摘要:一直以来,在我的理解中,类的成员变量和属性就是同一个东西,直到看了《深入理解Yii2.0》才明白,类的成员变量和属性其实不是同一个概念,成员变量是就类的结构构成而言的概念,而属性是就类的功能逻辑而言的概念,而且两者没有必然的对应关系。 类的成员变量有public、protected、private三 阅读全文
posted @ 2017-09-07 20:33 疯一样的狼人 阅读(1302) 评论(1) 推荐(0) 编辑
摘要:ListView是yii框架中类似GridView,也是用于展示多条数据的小部件,相比GridView,ListView可以更加灵活地设置数据展示的格式。 下面以我自己做的一个使用ListView来展示数据的例子,来简单讲解一下ListView小部件的使用。 首先需要在控制器中new一个数据提供器, 阅读全文
posted @ 2017-08-24 17:12 疯一样的狼人 阅读(1708) 评论(0) 推荐(1) 编辑
摘要:Mailer组件是yii框架自带的用于收发邮件的组件,无需安装,只需做一些配置即可使用,非常便捷。本文就mailer组件从配置到使用进行简单讲解。 首先在config/main.php配置如下: 这里要选择一个邮箱作为发送方,其中username设置发送方邮箱地址,可以在config/params. 阅读全文
posted @ 2017-08-15 19:48 疯一样的狼人 阅读(714) 评论(0) 推荐(0) 编辑
摘要:GridView小部件用于展示多条数据的列表。GridView小部件的使用需要数据提供器即yii\data\ActiveDataProvider的实例作为参数,所以 第一步就是要在控制器方法中创建这个实例然后传给视图,下面以我做的一个demo为例子进行讲解。 控制器LifeController代码: 阅读全文
posted @ 2017-08-08 18:13 疯一样的狼人 阅读(3427) 评论(0) 推荐(0) 编辑
摘要:本文主要记录本人从学习yii2到使用yii2开发项目过程中遇到的一些问题以及解决方法和知识点总结。 1. AR类关联哪个数据表? 默认情况下,AR类会根据类名称关联和类名相关的数据表,如:类名为Country时,关联数据表为country;类名为CountrySearch时,关联数据表为countr 阅读全文
posted @ 2017-08-07 18:12 疯一样的狼人 阅读(2187) 评论(0) 推荐(0) 编辑
摘要:DetailView小部件用于展示单条数据记录,可配置属性很少,使用也很简单,直接贴代码,一看就懂! yii小部件数据小部件DetailView的使用示例: 效果图如下: 注意:若想在DetailView某个单元格展示html,一定要设置该单元格的format参数为raw,否则html代码将原样输出 阅读全文
posted @ 2017-08-02 15:51 疯一样的狼人 阅读(1254) 评论(0) 推荐(0) 编辑
摘要:Yii选择布局的方法: 1. 通过控制器成员变量设置: public $layout = false;//不使用布局 public $layout = ‘main’;//设置使用的布局文件(@app/views/layouts/main.php) 2. 通过控制器方法设置: $this->layou 阅读全文
posted @ 2017-07-31 21:26 疯一样的狼人 阅读(1034) 评论(0) 推荐(0) 编辑
摘要:一、场景 什么情况下需要使用场景呢?当一个模型需要在不同情境中使用时,若不同情境下需要的数据表字段和数据验证规则有所不同,则需要定义多个场景来区分不同使用情境。例如,用户注册的时候需要填写email,登录的时候则不需要,这时就需要定义两个不同场景加以区分。 默认情况下模型的场景是由rules()方法 阅读全文
posted @ 2017-07-31 21:20 疯一样的狼人 阅读(9858) 评论(1) 推荐(0) 编辑

点击右上角即可分享
微信分享提示