yii2 源码分析1从入口开始】的更多相关文章

我是在 backend 一步步打印的 很多地方我也是很模糊 .后来发现一位大神的文章(http://www.yiichina.com/tutorial/773) 参考文章自己动手开始写的 至于后来的 第一遍 很粗糙 慢慢完善.希望对自己有帮助 希望各位积极指点 和后面不详细的地方 作补充. 我也会继续完善 . 先从入口开始$application = new yii\web\Application($config); //实例化 Application $application->run();…
Yii2 源码分析  入口文件执行流程 1. 入口文件:web/index.php,第12行.(new yii\web\Application($config)->run()) 入口文件主要做4件事: 1. 设置环境 2. 加载自动加载 3. 引入Web需要的配置 4. 运行应用Application 1 <?php 2 3 // comment out the following two lines when deployed to production 4 defined('YII_DEB…
写在前面,写这些随笔是记录下自己看Yii2源码的过程,可能会有些流水账,大部分解析放在注释里说明,由于个人水平有限,有不正确的地方还望斧正. web入口文件Index.php // 定义全局的常量,YII_DEBUG标识是够开启debug模式,YII_ENV标识出当前运行环境,默认env(开发), 上线后改成prod来表示正式环境. defined('YII_DEBUG') or define('YII_DEBUG', true); defined('YII_ENV') or define('Y…
Edit   源码版本为MongoDB 2.6分支 mongo主程序入口分析 mongo是MongoDB提供的一个执行JavaScript脚本的客户端工具,可以用来和服务端交互,2.6版本的MongoDB已经是使用了V8 JS引擎,由于本人对JS几乎没研究,所以本篇只是大概研究一下执行过程,对于JS的东西就先略过. mongo的main函数在dbshell.cpp文件中,同mongod一样提供了Windows和Linux两个版本,然后调用int _main( int argc, char* ar…
前文.NET框架源码解读之MYC编译器讲了MyC编译器的架构,整个编译器是用C#语言写的,上图列出了MyC编译器编译一个C源文件的过程,编译主路径如下: 首先是入口Main函数用来解析命令行参数,读取源文件,并开始编译过程.Main函数在MyC.cs文件,而IO.cs文件主要保存读取源码文件的相关操作.下表是Main函数的源码(批注用注释的方式显示),IO.cs文件用单独的一个小节说明: public static void Main() { try { // 看源码注释,代码是99年写的,也就…
转载请注明链接http://www.cnblogs.com/liuwanqiu/p/6737327.html yii2基本上所有的类都是继承的object类,下面就来分析一下object类吧 object类实现了一个接口Configurable,既然接口里什么都没有,就不介绍这个接口了... 最上面的注释被我删了,大致说了一下几点: *.一个属性通过get和set方法会被定义 *.类的属性不区分大小写 *.当创建一个对象后既可以通过对象的get和set方法来访问类的属性,也可以访问类的属性 *.…
模型类是数据模型的基类.此类继承了组件类,实现了3个接口 先介绍一下模型类前面的大量注释说了什么: * 模型类是数据模型的基类.此类继承了组件类,实现了3个接口 * 实现了IteratorAggregate(聚合式迭代器)接口,实现了ArrayAccess接口,可以像数组一样访问对象,这两个接口是php自带 * Arrayable接口是yii2框架自带 * 模型实现了以下常用功能: * * - 属性声明: 默认情况下,每个公共类成员都被认为是模型属性 * - 属性标签: 每个属性可以与用于显示目…
Action类是控制器的基类, <?php namespace yii\base; use Yii; /** * Action是所有控制器动作类的基类,它继承组件类 * * 动作提供了重用动作方法代码的方法, * Action类中的动作方法可以用于多个控制器或不同的项目中. * * 派生类必须实现一个方法叫` run() ` * 当请求操作时,该方法将由控制器调用 * `run()` 方法的参数由用户根据他们的名字自动输入的值确定 * 例如, `run()`方法以以下形式定义 * * ```ph…
Behavior类是所有事件类的基类,它继承自object类 Behavior类的前面注释描述大概意思: * Behavior类是所有事件类的基类 * * 一个行为可以用来增强现有组件的功能,而不需要修改它的代码. * 用来增强现有组件的功能而不修改它的代码.它可以添加自己的方法和属性组件 * 使他们可以直接通过组件访问.还可以响应组件触发的事件,拦截正常的代码执行. class Behavior extends Object { /** * 要附加行为对象的组件 */ public $owne…
转载请注明链接:http://www.cnblogs.com/liuwanqiu/p/6739880.html Event是所有事件的基类,它继承Object类 Event类上面的注释的大致意思: * Event是所有事件类的基类,它封装了与事件关联的参数 * sender属性指的是谁发起来的事件. * handled属性指的是事件的处理方式. 如果一个事件处理程序设置了handled为true,其它未处理的事件处理程序将不会被调用. * * 当附加事件处理程序时,可能会通过额外的数据 ,当事件…