Yii2框架配置文件(Application属性)与调试技巧实例分析


Posted in PHP onMay 27, 2019

本文实例讲述了Yii2框架配置文件(Application属性)与调试技巧。分享给大家供大家参考,具体如下:

配置文件

Yii2的主要配置文件config\web.php:

<?php
$params = require(__DIR__ . '/params.php');
$config = [
  'id' => 'basic',
  'basePath' => dirname(__DIR__),
  'bootstrap' => ['log'],
  'components' => [
    'request' => [
      // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
      'cookieValidationKey' => 'aldjaldjaldjaljd',
    ],
    'cache' => [
      'class' => 'yii\caching\FileCache',
    ],
    'user' => [
      'identityClass' => 'app\models\User',
      'enableAutoLogin' => true,
    ],
    'errorHandler' => [
      'errorAction' => 'site/error',
    ],
    'mailer' => [
      'class' => 'yii\swiftmailer\Mailer',
      // send all mails to a file by default. You have to set
      // 'useFileTransport' to false and configure a transport
      // for the mailer to send real emails.
      'useFileTransport' => true,
    ],
    'log' => [
      'traceLevel' => YII_DEBUG ? 3 : 0,
      'targets' => [
        [
          'class' => 'yii\log\FileTarget',
          'levels' => ['error', 'warning'],
        ],
      ],
    ],
    'db' => require(__DIR__ . '/db.php'),
    'urlManager' => [
      'enablePrettyUrl' => true,
      'showScriptName' => false,
      'rules' => [
      ],
    ],
  ],
  'params' => $params,
];
if (YII_ENV_DEV) {
  // configuration adjustments for 'dev' environment
  $config['bootstrap'][] = 'debug';
  $config['modules']['debug'] = [
    'class' => 'yii\debug\Module',
  ];
  $config['bootstrap'][] = 'gii';
  $config['modules']['gii'] = [
    'class' => 'yii\gii\Module',
  ];
}
return $config;

最后返回的一个数组,数组的key都是Application的属性。

我们到控制器中来访问一下:

public function actionIndex()
{
    echo \Yii::$app->id,'<br>';
    echo \Yii::$app->name,'<br>';
    exit;
    return $this->render('index',['username'=>'张三','age'=>22]);
}

Yii2框架配置文件(Application属性)与调试技巧实例分析

在入口文件web/index.php 里会加载这个config.php 配置文件,来创建一个Application

#...
$config = require(__DIR__ . '/../config/web.php');
(new yii\web\Application($config))->run();

调试技巧

助手类Yii,服务于整个框架,提供一些基础方法:记录日志、调试等
\Yii:warning()日志文件runtime/logs/app.log
\Yii::error()
\Yii::info()

\Yii:trace('调试内容','test') 

Yii2框架配置文件(Application属性)与调试技巧实例分析

Yii2框架配置文件(Application属性)与调试技巧实例分析

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
优化PHP代码的53条建议
Mar 27 PHP
深入理解PHP原理之异常机制
Aug 21 PHP
php随机输出名人名言的代码
Oct 07 PHP
解决PHP4.0 和 PHP5.0类构造函数的兼容问题
Aug 01 PHP
PHPAnalysis中文分词类详解
Jun 13 PHP
php下Memcached入门实例解析
Jan 05 PHP
php数组转成json格式的方法
Mar 09 PHP
将PHP从5.3.28升级到5.3.29时Nginx出现502错误
May 09 PHP
PHP+JS三级菜单联动菜单实现方法
Feb 24 PHP
Zend Framework处理Json数据方法详解
Dec 09 PHP
thinkPHP框架中执行事务的方法示例
May 31 PHP
laravel ajax curd 搜索登录判断功能的实现
Apr 17 PHP
Yii2框架视图(View)操作及Layout的使用方法分析
May 27 #PHP
Yii2框架操作数据库的方法分析【以mysql为例】
May 27 #PHP
php session_decode函数用法讲解
May 26 #PHP
基于ThinkPHP5框架使用QueryList爬取并存入mysql数据库操作示例
May 25 #PHP
Yii2框架自定义类统一处理url操作示例
May 25 #PHP
Yii2框架加载css和js文件的方法分析
May 25 #PHP
php数组遍历类与用法示例
May 24 #PHP
You might like
PHP读取ACCESS数据到MYSQL的代码
2011/05/11 PHP
js获取单选按钮的数据
2006/11/27 Javascript
添加JavaScript重载函数的辅助方法2
2010/07/04 Javascript
MooTools 页面滚动浮动层智能定位实现代码
2011/08/23 Javascript
基于jquery的滚动条滚动固定div(附演示下载)
2012/10/29 Javascript
原生javascript实现图片滚动、延时加载功能
2015/01/12 Javascript
浅谈EasyUI中Treegrid节点的删除
2015/03/01 Javascript
JS实现响应鼠标点击动画渐变弹出层效果代码
2016/03/25 Javascript
JS获取中文拼音首字母并通过拼音首字母快速查找页面内对应中文内容的方法【附demo源码】
2016/08/19 Javascript
js中动态创建json,动态为json添加属性、属性值的实例
2016/12/02 Javascript
详解微信UnionID作用
2019/05/15 Javascript
vue element-ui table组件动态生成表头和数据并修改单元格格式 父子组件通信
2019/08/15 Javascript
如何在postman中添加cookie信息步骤解析
2020/06/30 Javascript
[36:05]完美世界DOTA2联赛循环赛 Forest vs DM 第一场 11.06
2020/11/06 DOTA
Python 命令行非阻塞输入的小例子
2013/09/27 Python
python中requests模块的使用方法
2015/04/08 Python
Python的装饰器模式与面向切面编程详解
2015/06/21 Python
利用pandas将numpy数组导出生成excel的实例
2018/06/14 Python
python 简单照相机调用系统摄像头实现方法 pygame
2018/08/03 Python
浅析python中的迭代与迭代对象
2018/10/08 Python
Python上下文管理器用法及实例解析
2019/11/11 Python
Python3常用内置方法代码实例
2019/11/18 Python
python实现opencv+scoket网络实时图传
2020/03/20 Python
Python unittest装饰器实现原理及代码
2020/09/08 Python
python软件测试Jmeter性能测试JDBC Request(结合数据库)的使用详解
2021/01/26 Python
html5的canvas实现3d雪花飘舞效果
2013/12/27 HTML / CSS
爱奇艺VIP会员:大剧抢先看
2018/07/11 全球购物
Vilebrequin美国官方网上商店:法国豪华泳装品牌
2020/02/22 全球购物
数据库什么时候应该被重组
2012/11/02 面试题
创业计划书撰写原则
2014/01/25 职场文书
中医学专业自荐信范文
2014/04/01 职场文书
青春寄语大全
2014/04/09 职场文书
经营理念标语
2014/06/21 职场文书
中班下学期个人总结
2015/02/12 职场文书
vue组件的路由高亮问题解决方法
2021/05/11 Vue.js
教你使用VS Code的MySQL扩展管理数据库的方法
2022/01/22 MySQL