yii 1.0配置文件解析

来源:互联网 发布:矩阵的秩是什么意思 编辑:程序博客网 时间:2024/06/03 07:58

yii中配置文件主要是一个入口文件,然后

main.php


<?php// 取消下行的注释,来定义一个路径别名// Yii::setPathOfAlias('local','path/to/local-folder');// 这是 Web 应用配置的主体部分。任何可写的// CWebApplication 属性可以在这里配置。$config = array(    // protected 目录的基础路径    // 使用 Yii::app()->basePath 来访问    'basePath' => dirname(__FILE__) . DIRECTORY_SEPARATOR . '..',    // 应用的名字    // 使用 Yii::app()->name 来访问    'name' => 'My website',    //路径别名    // 可以是应用内部的路径,也可以是外部资源    'aliases' => array(        'myExternalFramework' => dirname(__FILE__) . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'myexternalframework'    ),    //维护程序时,这样子所有的请求转发到一个地方    'catchAllRequest' => array('site/all'),    //如何在应用程序处理请求之前执行一段操作?当然这个function方法要存在index.php    'onBeginRequest' => 'function',    //controller path    'controllerMap' => array('myController' => 'myExternalFramework.controllers.MyController'),    // 默认的 controller    'defaultController' => 'site',    // 用户语言(for Locale)    'language' => 'es',    //信息和视图的语言    'sourceLanguage' => 'es',    'timeZone' => 'Asia/Shanghai',    'theme' => 'default',    // 使用的字符集    'charset' => 'utf-8',    // 预载入的应用组件    'preload' => array('log'),    // 自动载入的类    'import' => array(        'application.models.*',        'application.components.*',    ),    // 可以使用 Yii::app()->params['paramName'] 访问的应用级别的参数    'params' => require(dirname(__FILE__) . '/params.php'),    // 在 params.php 中你需要返回这个数组:Yii::app()->setParams设置的只能用Yii::app()->params['xxx']这种数组的方式访问    // return array('adminEmail'=>'info@example.com');    // 应用组件的配置    'components' => array(        // assets, 参考www.yiiframework.com/doc/api/CAssetManager        'assetManager' => array(            // 改变磁盘上的路径            'basePath' => dirname(__FILE__) . '/../../assets/',            // 改变url            'baseUrl' => '/web/assets/'        ),        'request' => array(            'enableCsrfValidation' => true, //如果防止post跨站攻击            'enableCookieValidation' => true, //防止Cookie攻击        ),        // 缓存        'cache' => array(            'class' => 'A cache class, like: system.caching.CApcCache',        ),        'session' => array( //  memcache session cache            'class' => 'CCacheHttpSession',            'autoStart' => 1,            'sessionName' => 'frontend',            'cookieParams' => array('lifetime' => '3600', 'path' => '/', 'domain' => '.test.com', 'httponly' => '1'),            'cookieMode' => 'only',        ),        // 你可以使用 scriptMap 来配置脚本来自哪里。        // 对于一个生产环境的配置,如下        'clientScript' => array(            'scriptMap' => array(                'register.js' => 'site.min.js',                'login.js' => 'site.min.js',            ),        ),        // 对于一个开发环境,可以这样做        'clientScript' => array(            'scriptMap' => array(                'register.js' => 'register.js',                'login.js' => 'login.js',            ),        ),    ),);$database =  require(dirname(__FILE__) . DIRECTORY_SEPARATOR . 'db.php');if (!empty($database)) {    $config['components'] = CMap::mergeArray($config['components'],$database);//    Yii::app()->setComponents($database);}return $config;

db.php

<?phpreturn array(    'db' => array(        'connectionString' => 'mysql:host=192.168.1.240;dbname=tttt',        'emulatePrepare' => true,        'username' => 'root',        'password' => '****',        'charset' => 'utf8',    ),    'card' => array(        'class' => 'CDbConnection',//        'connectionString' => 'mysql:host=192.168.1.240;dbname=card',        'emulatePrepare' => true,        'username' => 'root',        'password' => '**',        'charset' => 'utf8',    ),);

params.php

<?phpreturn array('adminEmail'=>'info@example.com','pagesize'=>'100','pager'=>array('class'=>'PagerWidget', 'maxButtonCount'=>8,'firstPageLabel'=>'首页','lastPageLabel'=>'末页','nextPageLabel'=>'下一页','prevPageLabel'=>'上一页','header'=>'','cssFile'=>false, ), ); 

index.php 
配置环境常量,不同环境调用不同配置文件和调试级别。

/** * 应用程序环境,可选:development,production, */defined('APP_ENV') or define('APP_ENV','development');// change the following paths if necessaryif (APP_ENV == 'production') {error_reporting(0);$yii=dirname(__FILE__).'/framework/yiilite.php';defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',1);} else {$yii=dirname(__FILE__).'/framework/yii.php';// remove the following lines when in production modedefined('YII_DEBUG') or define('YII_DEBUG',true);// specify how many levels of call stack should be shown in each log messagedefined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',3);}$config=dirname(__FILE__).'/protected/config/'.APP_ENV.'.php';require('path/to/globals.php'); //见附件require_once($yii);Yii::createWebApplication($config)->run();

development.php 
开启weblog,profile,数据库性能显示,数据库查询参数记录,GII

production.php 
开启数据库结构缓存,关闭错误显示

<?phpreturn CMap::mergeArray(    require(dirname(__FILE__).'/main.php'),    array(        'components'=>array(            // uncomment the following to use a MySQL database            'log'=>array(                'class'=>'CLogRouter',                'routes'=>array(                    array(                        'class'=>'CFileLogRoute',                        'levels'=>'error, warning',                    )                ),            ),        ),    ));


1 0
原创粉丝点击