之前看过Yii2框架,也在其他框架实现其Gii手脚架功能,现在开始使用Yii做项目,顺便记录一下学习笔记

先推荐一个网址 Yii2速查表(中文版)http://nai8.me/tool-sc.html

Yii和Laravel类似,都有一个全局的app实例化对象,下面先来看看Yii::app()

Yii::app() 是一个实例化的对象,是我们在当前框架里边可以直接操作的对象,

我们可以把这个对象理解成请求应用的第一个对象。

Yii框架是纯OOP面向对象框架,也就是利用对象调用类的属性、方法,完成应用请求。


通过上图分析,我们知道了Yii::app()是系统第一个对象,是老大,我们可以利用该对象调用系统里边其他的相关方法、属性、对象。

 

Yii::app() 是CwebApplication类实例化的对象

CwebApplication(framework/web/CwebApplication.php)

 

因此Yii::app()可以调用CwebApplication或父类 CApplication里边的相关属性或方法。

注意:不要随便访问CwebApplication或 其父类的 相关方法,会影响系统稳定。

 

可以通过函数get_class(对象),根据对象获得对应的类。

 

系统应用组件

我们可以通过Yii::app()调用系统的组件

User  session  request log  db等等

 

在系统的任何角落都可以直接访问以上组件

Yii ::app()->user  (实例化对象'CWebUser' => '/web/auth/CWebUser.php',)

Yii ::app()->session(实例化'CHttpSession')

Yii ::app()->request

Yii ::app()->db

Yii ::app()在入口处实例化index.php

yii2学习笔记的更多相关文章

  1. 关于yii2学习笔记:gii的使用

    yii2中的gii无疑是非常强大的代码生成工具,以下是我学习使用gii的一些技巧,跟大家分享一下. 以User为例,在数据库中,创建user表. /*Navicat MySQL Data Transf ...

  2. yii2安装与初始化-Yii2学习笔记(一)

    一.安装项目: 使用composer下载安装yii2 advanced安装包: composer create-project yiisoft/yii2-app-advanced advanced(自 ...

  3. Yii2学习笔记---内附GridView配置总结

    1./vendor/yiisoft/yii2/web/UrlManager.php 方法createUrl 修改url参数转码2.config/web.php 配置文件Yii::$app(应用主体)的 ...

  4. Yii2学习笔记之场景

    场景 一个模型可能在多个场景中使用,在不同的场景中,模型可能使用不同的业务逻辑和规则.例如, User 模型可能在用户登录时使用,也可能在用户注册时使用,某些属性可能在用户注册时强制要求有,在用户登录 ...

  5. 慕课网,我的yii2学习笔记(基础篇)

    一.关于PHP知识点 1.命名空间:存放类文件的空间,可以随便定义,建议与类文件目录一致,方便管理. 注:(1).如果类没有设置命名空间,默认为顶级命名空间,在程序中可以用一下方式实例化. $mode ...

  6. Yii2学习笔记:汉化yii,设置表单的描述(属性标签attributeLabels)

    一:汉化框架 框架汉化在这里设置,如果不生效,前台后台的配置文件都设置下应该就可以了 二:汉化表单 汉化表单,直接在模型层设置,例如: 原来的联系我们表单 汉化后: ] 这种汉化在哪里修改呢?其实是设 ...

  7. CUBRID学习笔记 1 简介 cubrid教程

    CUBRID 是一个全面开源,且完全免费的关系数据库管理系统.CUBRID为高效执行Web应用进行了高度优化,特别是需要处理大数据量和高并发请求的复杂商务服务.通过提供独特的最优化特性,CUBRID可 ...

  8. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  9. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

随机推荐

  1. [转]在Storyboard中使用自定义的segue类型

    转自:http://my.oschina.net/u/728866/blog/92709 我们知道segue共有三种类型:push.modal以及custom.如下图:   很明显,这三种类型的作用分 ...

  2. Netty内存池

    参考资料:http://blog.csdn.net/youaremoon/article/details/47910971 主要思想:buddy allocation,jemalloc

  3. CSU 1785: 又一道简单题

    1785: 又一道简单题 Submit Page   Summary   Time Limit: 5 Sec     Memory Limit: 128 Mb     Submitted: 602   ...

  4. Java---Static内存图详解

    案例: 输出结果 内存图: 执行流程: java文件通过编译成class文件,class文件通过类加载器加载到方法区中,程序首先会加载核心类库,也就是你的程序想要运行所需要的一些最基本的类.接着程序会 ...

  5. BZOJ 4543 2016北京集训测试赛(二)Problem B: thr

    Solution 这题的解法很妙啊... 考虑这三个点可能的形态: 令它们的重心为距离到这三个点都相同的节点, 则其中两个点分别在重心的两棵子树中, 且到重心的距离相等; 第三个点可能在重心的一棵不同 ...

  6. Guru's Guide to SQL Server Architecture and Internals

    Guru's Guide to SQL Server Architecture and Internals

  7. centos中httpd Server not started: (13)Permission denied: make_sock: could not bind to address [::]:8888

    Install semanage tools: sudo yum -y install policycoreutils-python Allow port 88 for httpd: sudo sem ...

  8. iOS 5 does not allow to store downloaded data in Documents directory? ios5.0及以后的版本对于下载的文件存储路径有了改变

    I have made an application for my client by keeping target iOS as 4. But since the application still ...

  9. 【POI】导出xls文件报错:The maximum number of cell styles was exceeded. You can define up to 4000 styles in a .xls workbook

    使用POI导出xls文件,由于数据过多,导致导出xls报错如下: The maximum number of cell styles was exceeded. You can define up t ...

  10. NetBeans菜单栏字体太小了

    NetBeans菜单栏字体太小了,导致很难看 解决方法:在netbeans的快捷方式内加入"netbeans.exe" --fontsize 12参数.还可以通过配置NetBean ...