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打开文件fopen函数的使用说明
Jul 05 PHP
PHP计算一年多少个星期和每周的开始和结束日期
Jul 01 PHP
ThinkPHP采用原生query实现关联查询left join实例
Dec 02 PHP
PHP file_get_contents函数读取远程数据超时的解决方法
May 13 PHP
十个PHP高级应用技巧果断收藏
Sep 25 PHP
[原创]ThinkPHP让../Public在模板不解析(直接输出)的方法
Oct 09 PHP
CI映射(加载)数据到view层的方法
Mar 28 PHP
php实现的http请求封装示例
Nov 08 PHP
PHP基于XMLWriter操作xml的方法分析
Jul 17 PHP
PHP实现的回溯算法示例
Aug 15 PHP
PHP中的Iterator迭代对象属性详解
Apr 12 PHP
PHP实现给定一列字符,生成指定长度的所有可能组合示例
Jun 22 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 echo, print, print_r, sprintf, var_dump, var_expor的使用区别
2013/06/20 PHP
ext读取两种结构的xml的代码
2008/11/05 Javascript
javascript下判断一个对象是否具有指定名称的属性的的代码
2010/01/11 Javascript
javascript基础知识大全 便于大家学习,也便于我自己查看
2012/08/17 Javascript
常见表单重复提交问题整理及解决方法
2013/11/13 Javascript
jQuery实现径向动画菜单效果
2015/07/17 Javascript
NodeJS整合银联网关支付(DEMO)
2016/11/09 NodeJs
通过bootstrap全面学习less
2016/11/09 Javascript
js实现延迟加载的几种方法
2017/04/24 Javascript
详解React-Native解决键盘遮挡问题(Keyboard遮挡问题)
2017/07/13 Javascript
详谈commonjs模块与es6模块的区别
2017/10/18 Javascript
30分钟快速实现小程序语音识别功能
2018/11/27 Javascript
详解@Vue/Cli 3 Invalid Host header 错误解决办法
2019/01/02 Javascript
nodeJS进程管理器pm2的使用
2019/01/09 NodeJs
微信小程序跨页面传递data数据方法解析
2019/12/13 Javascript
vue项目中监听手机物理返回键的实现
2020/01/18 Javascript
使用PreloadJS加载图片资源的基础方法详解
2020/02/03 Javascript
antd table按表格里的日期去排序操作
2020/11/17 Javascript
python访问系统环境变量的方法
2015/04/29 Python
Python实现二维有序数组查找的方法
2016/04/27 Python
python编程测试电脑开启最大线程数实例代码
2018/02/09 Python
python使用threading.Condition交替打印两个字符
2019/05/07 Python
Python 中的 import 机制之实现远程导入模块
2019/10/29 Python
python同义词替换的实现(jieba分词)
2020/01/21 Python
Python之Django自动实现html代码(下拉框,数据选择)
2020/03/13 Python
Pycharm连接gitlab实现过程图解
2020/09/01 Python
amazeui时间组件的实现示例
2020/08/18 HTML / CSS
Guess荷兰官网:美国服饰品牌
2020/01/22 全球购物
大学自主招生自荐信
2013/12/16 职场文书
大学本科毕业生求职信范文
2013/12/18 职场文书
工程售后服务方案
2014/06/08 职场文书
三严三实对照检查材料思想汇报
2014/09/28 职场文书
自主招生自荐信格式范文
2015/03/25 职场文书
2015年四年级班主任工作总结
2015/10/22 职场文书
分享CSS盒子模型隐藏的几种方式
2022/02/28 HTML / CSS
一次SQL如何查重及去重的实战记录
2022/03/13 MySQL