1 / 158
文档名称:

yii2.0权威指南.pdf

格式:pdf   大小:2,116KB   页数:158页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

yii2.0权威指南.pdf

上传人:薄荷牛奶 2018/4/8 文件大小:2.07 MB

下载得到文件列表

yii2.0权威指南.pdf

文档介绍

文档介绍:001总览
001总览
总览
Yii 应用参照模型-视图-控制器(MVC) 设计模式来组织。模型代表数据、业务逻辑和规则;视图展示模型的输出;控制器接受出入并
将其转换为模型和视图命令。
除了 MVC, Yii 应用还有以下部分:
入口脚本:终端用户能直接访问的 PHP 脚本,负责启动一个请求处理周期。
应用:能全局范围内访问的对象,管理协调组件来完成请求.
应用组件:在应用中注册的对象,提供不同的功能来完成请求。
模块:包含完整 MVC 结构的独立包,一个应用可以由多个模块组建。
过滤器:控制器在处理请求之前或之后需要触发执行的代码。
小部件:可嵌入到视图中的对象,可包含控制器逻辑,可被不同视图重复调用。
下面的示意图展示了 Yii 应用的静态结构:
002 入口脚本
入口脚本
入口脚本是应用启动流程中的第一环,一个应用(不管是网页应用还是控制台应用)只有一个入口脚本。终端用户的请求通过入口脚本实
例化应用并将将请求转发到应用。
Web 应用的入口脚本必须放在终端用户能够访问的目录下,通常命名为 ,也可以使用 Web 服务器能定位到的其他名称。
控制台应用的入口脚本一般在应用根目录下命名为 yii(),该文件需要有执行权限,这样用户就能通过命令./yii
<route> [arguments] [options] 来运行控制台应用。
入口脚本主要完成以下工作:
定义全局常量;
poser 自动加载器;
包含[[Yii]] 类文件;
加载应用配置;
创建一个应用实例并配置;
调用[[yii\base\Application::run()]] 来处理请求。
Web 应用
以下是基础应用模版入口脚本的代码:
<?php
defined('YII_DEBUG') or define('YII_DEBUG', true);
defined('YII_ENV') or define('YII_ENV', 'dev');
// poser 自动加载器
require(__DIR__ . '/../vendor/');
// 包含 Yii 类文件
require(__DIR__ . '/../vendor/yiisoft/yii2/');
// 加载应用配置
$config = require(__DIR__ . '/../config/');
// 创建、配置、运行一个应用
(new yii\web\Application($config))->run();
控制台应用
以下是一个控制台应用的入口脚本:
#!/usr/bin/env php
<?php
/**
* Yii console bootstrap file.
*
* ***@link /
* ***@copyright Copyright (c) 2008 Yii Software LLC
* ***@license ense/
*/
defined('YII_DEBUG') or define('YII_DEBUG', true);
// fcgi 默认没有定义 STDIN 和 STDOUT
defined('STDIN') or define('STDIN', fopen('php://stdin', 'r'));
defined('STDOUT') or define('STDOUT', fopen('php://stdout', 'w'));
// poser 自动加载器
require(__DIR__ . '/vendor/');
// 包含 Yii 类文件
require(__DIR__ . '/vendor/yiisoft/yii2/');
// 加载应用配置
$config = require(__DIR__ . '/config/');
$application = new yii\console\Application($config);
$exitCode = $application->run();
exit($exitCode);
定义常量
入口脚本是定义全局常量的最好地方,Yii 支持以下三个常量:
YII_DEBUG:标识应用是否运行在调试模式。当在调试模式下,应用会保留更多日志信息,如果抛出异常,会显示详细的错误调用
堆栈。因此,调试模式主要适合在开发阶段使用,YII_DEBUG 默认值为 false。
YII_ENV:标识应用运行的环境,详情请查