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判断字符以及字符串的包含方法属性
Aug 30 PHP
超小PHP小马小结(方便查找后门的朋友)
May 05 PHP
php中长文章分页显示实现代码
Sep 29 PHP
php数组转换js数组操作及json_encode的用法详解
Oct 26 PHP
php中http与https跨域共享session的解决方法
Dec 20 PHP
PHP date函数常用时间处理方法
May 11 PHP
Yii2验证器(Validator)用法分析
Jul 23 PHP
PHP与SQL语句常用大全
Dec 10 PHP
老生常谈PHP 文件写入和读取(必看篇)
May 22 PHP
php curl上传、下载、https登陆实现代码
Jul 23 PHP
PHP如何实现订单的延时处理详解
Dec 30 PHP
laravel按天、按小时,查询数据的实例
Oct 09 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
oracle资料库函式库
2006/10/09 PHP
关于PHP实现异步操作的研究
2013/02/03 PHP
thinkphp3.x中变量的获取和过滤方法详解
2016/05/20 PHP
PHP常用排序算法实例小结【基本排序,冒泡排序,快速排序,插入排序】
2017/02/07 PHP
PHP获取链表中倒数第K个节点的方法
2018/01/18 PHP
PHP实现简单用户登录界面
2019/10/23 PHP
Yii框架安装简明教程
2020/05/15 PHP
js页面跳转常用的几种方式
2010/11/25 Javascript
jquery绑定原理 简单解析与实现代码分享
2011/09/06 Javascript
jquery原创弹出层折叠效果点击折叠弹出一个层
2014/03/12 Javascript
jquery bind(click)传参让列表中每行绑定一个事件
2014/08/06 Javascript
浅谈重写window对象的方法
2014/12/29 Javascript
深入浅析JavaScript中对事件的三种监听方式
2015/09/29 Javascript
javascript:void(0)点击登录没反应怎么解决
2015/11/13 Javascript
Angularjs手动解析表达式($parse)
2016/10/12 Javascript
基于JS实现弹出一个隐藏的div窗口body页面变成灰色并且不可被编辑
2016/12/14 Javascript
vue.js指令和组件详细介绍及实例
2017/04/06 Javascript
JS中图片压缩的方法小结
2017/11/14 Javascript
解决Vue 通过下表修改数组,页面不渲染的问题
2018/03/08 Javascript
关于vue中的ajax请求和axios包问题
2018/04/19 Javascript
小程序实现搜索界面 小程序实现推荐搜索列表效果
2019/05/18 Javascript
全局安装 Vue cli3 和 继续使用 Vue-cli2.x操作
2020/09/08 Javascript
js重写alert事件(避免alert弹框标题出现网址)
2020/12/04 Javascript
[01:08:10]2014 DOTA2国际邀请赛中国区预选赛 SPD-GAMING VS LGD-CDEC
2014/05/22 DOTA
[43:03]LGD vs Newbee 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
Python变量和字符串详解
2017/04/29 Python
PyQt5每天必学之单行文本框
2018/04/19 Python
python三引号输出方法
2019/02/27 Python
Python常用特殊方法实例总结
2019/03/22 Python
python scipy卷积运算的实现方法
2019/09/16 Python
Python3.7实现验证码登录方式代码实例
2020/02/14 Python
HTML5 3D旋转相册的实现示例
2019/12/03 HTML / CSS
难忘的一课教学反思
2014/04/30 职场文书
上甘岭观后感
2015/06/10 职场文书
2016中秋节问候语
2015/11/11 职场文书
班主任寄语2016
2015/12/04 职场文书