yii 1.0配置文件解析

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'=>'[email protected]');

    // 应用组件的配置
    '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

<?php
return 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

<?php
return array(
	'adminEmail'=>'[email protected]',
	'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 necessary
if (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 mode
	defined('YII_DEBUG') or define('YII_DEBUG',true);
	// specify how many levels of call stack should be shown in each log message
	defined('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

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

<?php
return 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',
                    )
                ),
            ),
        ),
    )
);

时间: 2024-10-10 01:22:01

yii 1.0配置文件解析的相关文章

MySQL 5.6.24 线上版本配置文件解析

线上MySQL服务器配置文件解析 innodb_buffer_pool_size 非常重要的一个参数,用于配置InnoDB的缓冲池,如果数据库中只有哦Innodb表,则推荐配置量为总内存的75% select  engine,round(sum(data_length + index_length)/1024/1024,1) as 'Total MB' from information_schema.tables  where table_schema not in ('information_

SSH学习之二 OpenSSH配置文件解析

下面是对SSH配置文件的一些选项的分解说明,ssh_config是OpenSSH客户端的配置文件,sshd_config是OpenSSH服务器端的配置文件. ssh_config的内容如下: # This is the ssh client system-wide configuration file.  See ssh_config(5) for more information.  This file provides defaults for users, and the values c

redis概述,特点,与Memached的不同,生产环境主从配置,redis配置文件解析

Redis概述: 是一个基于Key-Value的持久化数据库存储,支持丰富的数据类型,用C语言编写,可基于内存又可持久化的日志型.Key-Value数据库,并提供多种语言的API Redis特点 1.Key-Value健值类型存储 2.支持数据可靠存储及落地 3.单进程单线程高性能服务器 4.单机qps(每秒查询率)可以达到10w 5.适合小数据量高速读写访问 Redis跟Memached的不同 1.Redis可以持久化数据存储 2.性能高很,Redis能支持超过10W每秒的读写频率 3.丰富的

SSH问题:系统启动时,spring配置文件解析失败,报”cvc-elt.1: 找不到元素 &#39;beans&#39; 的声明“异常

现象:spring加载配置文件applicationContext.xml出错,抛出nested exception is og.xml.sax.SAXParseException; lineNumber: 12; columnNumber: 47; cvc-elt.1: 找不到元素 'beans' 的声明r的异常信息. 造成该异常原因有两种: 第一,配置文件头部配置的xsd版本信息不正确,造成解析时出错.spring头部xsd或dtd校验文件的查找分两步,第一先从本地jar包中找,如果找到则用

系统启动时,spring配置文件解析失败,报”cvc-elt.1: 找不到元素 &#39;beans&#39; 的声明“异常

现象:spring加载配置文件applicationContext.xml出错,抛出nested exception is og.xml.sax.SAXParseException; lineNumber: 12; columnNumber: 47; cvc-elt.1: 找不到元素 'beans' 的声明r的异常信息. 造成该异常原因有两种: 第一,配置文件头部配置的xsd版本信息不正确,造成解析时出错.spring头部xsd或dtd校验文件的查找分两步,第一先从本地jar包中找,如果找到则用

WCF中配置文件解析

WCF中配置文件解析 2014-06-14 参考 WCF中配置文件解析 返回 在WCF Service Configuration Editor的使用中,我们通过配置工具自动生成了WCF服务端的config文件.现在我们来看下这个配置文件各个标签的意义: 1 <?xml version="1.0" encoding="utf-8" ?> 2 <configuration> 3 <!-- 这个程序集我们在项目中有引用的 --> 4

Redis配置文件解析

Redis概述: 是一个基于Key-Value的持久化数据库存储,支持丰富的数据类型,用C语言编写,可基于内存又可持久化的日志型.Key-Value数据库,并提供多种语言的API Redis特点 1.Key-Value健值类型存储 2.支持数据可靠存储及落地 3.单进程单线程高性能服务器 4.单机qps(每秒查询率)可以达到10w 5.适合小数据量高速读写访问 Redis跟Memached的不同 1.Redis可以持久化数据存储 2.性能高很,Redis能支持超过10W每秒的读写频率 3.丰富的

Hadoop配置文件解析

Hadoop源码解析 2 --- Hadoop配置文件解析 1 Hadoop Configuration简介    Hadoop没有使用java.util.Properties管理配置文件, 也没有使用Apache Jakarta Commons Configuration管理配置文件,而是使用了一套独有的配置文件管理系统,并提供自己的API,即使用 org.apache.hadoop.conf.Configuration处理配置信息. org.apache.hadoop.conf目录结构如下:

python ConfigParser模块 配置文件解析

ConfigParser模块主要是用来解析配置文件的模块,像mysql,或者win下面的ini文件等等 下面我们来解析mysql的配置文件my.cnf my.cnf配置文件内容 [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic