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 Mysql编程之高级技巧
Aug 27 PHP
php 修改zen-cart下单和付款流程以防止漏单
Mar 08 PHP
关于查看MSSQL 数据库 用户每个表 占用的空间大小
Jun 21 PHP
yii实现级联下拉菜单的方法
Jul 31 PHP
thinkphp autoload 命名空间自定义 namespace
Jul 17 PHP
PHP单态模式简单用法示例
Nov 16 PHP
PHP中类的自动加载的方法
Mar 17 PHP
PHP从尾到头打印链表实例讲解
Sep 27 PHP
Ajax+PHP实现的删除数据功能示例
Feb 12 PHP
TP5(thinkPHP5框架)基于bootstrap实现的单图上传插件用法示例
May 29 PHP
PHP替换Word中变量并导出PDF图片的实现方法
Nov 26 PHP
使用php的mail()函数实现发送邮件功能
Jun 03 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+MYSQL开发工具及资源收藏
2007/01/02 PHP
Yii2框架dropDownList下拉菜单用法实例分析
2016/07/18 PHP
php基于curl实现的股票信息查询类实例
2016/11/11 PHP
PHP使用PDO创建MySQL数据库、表及插入多条数据操作示例
2019/05/30 PHP
了解一点js的Eval函数
2012/07/26 Javascript
JavaScript中OnLoad几种使用方法
2012/12/15 Javascript
JavaScript统计网站访问次数的实现代码
2015/11/18 Javascript
原生JavaScript实现异步多文件上传
2015/12/02 Javascript
Angular实现跨域(搜索框的下拉列表)
2017/02/16 Javascript
详解Angular2组件之间如何通信
2017/06/22 Javascript
Vue DevTools调试工具的使用
2017/12/05 Javascript
基于Vue制作组织架构树组件
2017/12/06 Javascript
vue加载完成后的回调函数方法
2018/09/07 Javascript
Vue中用props给data赋初始值遇到的问题解决
2018/11/27 Javascript
vue移动端屏幕适配详解
2019/04/30 Javascript
微信小程序 函数防抖 解决重复点击消耗性能问题实现代码
2019/09/12 Javascript
antd-日历组件,前后禁止选择,只能选中间一部分的实例
2020/10/29 Javascript
JavaScript枚举选择jquery插件代码实例
2020/11/17 jQuery
js实现弹窗猜数字游戏
2020/11/26 Javascript
python函数缺省值与引用学习笔记分享
2013/02/10 Python
python 链接和操作 memcache方法
2017/03/04 Python
Python 常用的安装Module方式汇总
2017/05/06 Python
浅谈python中的__init__、__new__和__call__方法
2017/07/18 Python
详解Django之admin组件的使用和源码剖析
2018/05/04 Python
详解Python3的TFTP文件传输
2018/06/26 Python
django模板结构优化的方法
2019/02/28 Python
python实现远程控制电脑
2019/05/23 Python
Python中 Global和Nonlocal的用法详解
2020/01/20 Python
Tensorflow实现将标签变为one-hot形式
2020/05/22 Python
Keras设置以及获取权重的实现
2020/06/19 Python
Python中Pyspider爬虫框架的基本使用详解
2021/01/27 Python
纯css3制作煽动翅膀的蝴蝶的示例
2018/04/23 HTML / CSS
手摸手教你用canvas实现给图片添加平铺水印的实现
2019/08/20 HTML / CSS
员工年终演讲稿
2014/01/03 职场文书
建议书怎么写
2014/03/12 职场文书
element tree树形组件回显数据问题解决
2022/08/14 Javascript