yii2源码学习笔记

assets   前端资源文件夹,用于管理css js等前端资源文件等

commands   包含命令行命令,文件为控制器文件

config 应用的配置文件

controllers 控制器文件

mail  (应用的前后台和命令行的与邮件相关的布局文件等)

modles 模型文件

runtime 程序运行时生成的临时文件

tests     用于各种测试程序的测试类文件

vendor  就是各种第三方的程序。 这是Composer安装的其他程序的存放目录,包含Yii框架本身。

如果你向composer.json 目录增加了新的安装的程序,下次调用Composer的时候, 就会把新安装的目录也安装在这个 vendor 下面。

views 视图文件

web  入口文件的存放目录,对于Web服务器可以访问的目录。其他所有的目录不对Web用户显示。

requirements.php  测试环境是否符合yii框架的要求

yii 文件 它没有扩展名,我们不好知道其具体类型。 但是从文件内容的第一行 #!/usr/bin/env php 来看,这是一个bash脚本。 第一行在告诉bash,也在告诉我们,这是一个使用PHP运行的脚本。

对于Windows系统而言,命令行的入口脚本仍然是 yii ,但是命令行下无法直接运行。所以Yii为我们准备了一个 yii.bat 。这个文件会以 php yii 形式调用PHP来运行入口脚本 。

yii2的入口文件 web/index.php<?phpdefined(‘YII_DEBUG‘) or define(‘YII_DEBUG‘, true);  /** * 在调试模式下执,默认情况下YII_DEBUG为ture.如果定义了YII_DEBUG,则后面的语句将不执行. * 如果定义了 YII_DEBUG ,那么表示当前为调试状态,应用在运行过程中,会有一些调试信息的输出. */defined(‘YII_ENV‘) or define(‘YII_ENV‘, ‘dev‘);     /** * dev prod 是安装后默认的两个环境,分别表示开发环境和最终的成品环境。默认情况YII_ENV为prod 表示产品环境。 * 如果定义了YII_ENV应用将运行于 dev 环境。此外还有一个 test 环境,表示测试环境。 * YII_ENV 的 dev prod test 三种环境, 会分别使 YII_ENV_DEV YII_ENV_PROD YII_ENV_TEST 的值为 true 。 * 在应用的配置中,可以对不同环境作出不同的配置。 */require(__DIR__ . ‘/../vendor/autoload.php‘);require(__DIR__ . ‘/../vendor/yiisoft/yii2/Yii.php‘);/** *  注册Composer自动加载器,yii.php包含Yii的类文件。 */

$config = require(__DIR__ . ‘/../config/web.php‘);  //引入配置文件。

(new yii\web\Application($config))->run();          // 实例化Application类,通过run()调用。
时间: 2024-07-29 00:42:40

yii2源码学习笔记的相关文章

yii2源码学习笔记(八)

Action是所有控制器的基类,接下来了解一下它的源码.yii2\base\Action.php 1 <?php 2 /** 3 * @link http://www.yiiframework.com/ 4 * @copyright Copyright (c) 2008 Yii Software LLC 5 * @license http://www.yiiframework.com/license/ 6 */ 7 8 namespace yii\base; 9 10 use Yii; 11 1

yii2源码学习笔记(六)

Behvaior类,Behavior类是所有事件类的基类: 目录yii2\base\Behavior.php 1 <?php 2 /** 3 * @link http://www.yiiframework.com/ 4 * @copyright Copyright (c) 2008 Yii Software LLC 5 * @license http://www.yiiframework.com/license/ 6 */ 7 8 namespace yii\base; 9 10 /** 11

yii2源码学习笔记(十四)

Module类是模块和应用类的基类. yiisoft\yii2\base\Module.php 1 <?php 2 /** 3 * @link http://www.yiiframework.com/ 4 * @copyright Copyright (c) 2008 Yii Software LLC 5 * @license http://www.yiiframework.com/license/ 6 */ 7 8 namespace yii\base; 9 10 use Yii; 11 us

yii2源码学习笔记(十一)

Controller控制器类,是所有控制器的基类,用于调用模型和布局. 1 <?php 2 /** 3 * @link http://www.yiiframework.com/ 4 * @copyright Copyright (c) 2008 Yii Software LLC 5 * @license http://www.yiiframework.com/license/ 6 */ 7 8 namespace yii\base; 9 10 use Yii; 11 12 /** 13 * Co

yii2源码学习笔记(二十)

Widget类是所有部件的基类.yii2\base\Widget.php 1 <?php 2 /** 3 * @link http://www.yiiframework.com/ 4 * @copyright Copyright (c) 2008 Yii Software LLC 5 * @license http://www.yiiframework.com/license/ 6 */ 7 8 namespace yii\base; 9 10 use Yii; 11 use Reflectio

yii2源码学习笔记(十三)

模型类DynamicModel主要用于实现模型内的数据验证yii2\base\DynamicModel.php 1 <?php 2 /** 3 * @link http://www.yiiframework.com/ 4 * @copyright Copyright (c) 2008 Yii Software LLC 5 * @license http://www.yiiframework.com/license/ 6 */ 7 namespace yii\base; 8 9 use yii\v

yii2源码学习笔记(十七)

Theme 类,应用的主题,通过替换路径实现主题的应用,方法为获取根路径和根链接:yii2\base\Theme.php 1 <?php 2 /** 3 * @link http://www.yiiframework.com/ 4 * @copyright Copyright (c) 2008 Yii Software LLC 5 * @license http://www.yiiframework.com/license/ 6 */ 7 8 namespace yii\base; 9 10 u

yii2源码学习笔记(五)

Event是所有事件类的基类.它封装了与事件相关的参数. yii2\base\Event.php 1 <?php 2 /** 3 * @link http://www.yiiframework.com/ 4 * @copyright Copyright (c) 2008 Yii Software LLC 5 * @license http://www.yiiframework.com/license/ 6 */ 7 8 namespace yii\base; 9 10 /** 11 * Even

yii2源码学习笔记(四)

继续了解组件Component.php /** * Returns a value indicating whether a property is defined for this component. * A property is defined if: * * - the class has a getter or setter method associated with the specified name * (in this case, property name is case