Yii - main.php - 配置
2014-08-02 09:32
141 查看
Yii是个可定制的框架。main.php是Yii的配置文件,给我们提供了一个方便的方法来设置不同的应用组件,它位于(protected/config/)目录下。
———数据库的配置———
return array(
...
'components'=>array(
'db'=>array(
'class'=>'system.db.CDbConnection',
'connectionString'=>'mysql:host=localhost;dbname=database_name',
'username'=>'root',
'password'=>'',
'charset'=>'utf8',
),
...
),
...
);
———分析—————
当你第一次直接或通过活跃记录模型(AR)使用Yii::app()->db组件,Yii 将创建一个组件 并且 用 应用配置文件 main.php 中组件部分db数组中相应的值来始化它的公共属性。在上面的代码里 ’connectionString’ 的值将被分配给 CDbConnection::connectionString , ‘username’ 将被分配给 CDbConnection::username
,诸如此类........
在上面的代码中,”class”属性有点儿特殊。它不在CDbConnection类中,它可以用来覆写一个类,这种方法可以覆写每一个应用组件,在一个标准组件不适合你的应用的情况下很有用途。
——————————————————————————————————————————————————————————————————————————————————————
有哪些 Yii组件 可以配置。Yii绑定了两种应用类型:
网络应用(CWebApplication)
控制台应用
它们2个都是都是继承自CApplication,所以命令行和网络应用都享有CApplication类的组件。
Yii组件的哪些属性可以配置
——组件的公共成员变量
—— 组件的setter方法指定的属性
控制台和网络应用都可以用的组件:
额外组件,只有网络应用可用:
通过上面分析我们总结一下main.php配置的步骤:
1.先弄清楚你要配置的 组件所使用的类是什么?(无论是核心组件还是自定义组件)
2. 组件类的公共成员变量都有哪些?(注意从父类继承而来的公共成员变量)
3. 组件类都有哪些settter方法?(注意从父类继承而来的方法)
明白了以上三个要点,我们就可以按规律定义组件的属性,比如对最重要的db组件,我们发现这是一个核心组件,使用的类为CDbConnection, 我们查阅这个类的定义文件,查看这个类的公共成员变量。
——————————————————————————————
——————————————————————————————————
——————————————————————————————————————————————————————————————————————————
———数据库的配置———
return array(
...
'components'=>array(
'db'=>array(
'class'=>'system.db.CDbConnection',
'connectionString'=>'mysql:host=localhost;dbname=database_name',
'username'=>'root',
'password'=>'',
'charset'=>'utf8',
),
...
),
...
);
———分析—————
当你第一次直接或通过活跃记录模型(AR)使用Yii::app()->db组件,Yii 将创建一个组件 并且 用 应用配置文件 main.php 中组件部分db数组中相应的值来始化它的公共属性。在上面的代码里 ’connectionString’ 的值将被分配给 CDbConnection::connectionString , ‘username’ 将被分配给 CDbConnection::username
,诸如此类........
在上面的代码中,”class”属性有点儿特殊。它不在CDbConnection类中,它可以用来覆写一个类,这种方法可以覆写每一个应用组件,在一个标准组件不适合你的应用的情况下很有用途。
——————————————————————————————————————————————————————————————————————————————————————
有哪些 Yii组件 可以配置。Yii绑定了两种应用类型:
网络应用(CWebApplication)
控制台应用
它们2个都是都是继承自CApplication,所以命令行和网络应用都享有CApplication类的组件。
Yii组件的哪些属性可以配置
——组件的公共成员变量
—— 组件的setter方法指定的属性
控制台和网络应用都可以用的组件:
组件名 | 默认/建议的组件类 | 描述 |
---|---|---|
coreMessages | CPhpMessageSource | 为翻译Yii框架消息提供消息源。 |
db | CDbConnection | 提供数据库连接。 |
messages | CPhpMessageSource | 为翻译应用消息提供消息源。 |
errorHandler | CErrorHandler | 处理PHP错误和未捕获的异常。 |
securityManager | CSecurityManager | 提供安全相关的服务,像散列和加密。 |
statePersister | CStatePersister | 提供全局状态持续方法。 |
format | CFormatter | 提供一套常用的数据格式化方法。 |
cache | CFileCache | 提供缓存特性。 |
组件名 | 默认/建议的组件类 | 描述 |
---|---|---|
coreMessages | CPhpMessageSource | 为翻译Yii框架消息提供消息源。 |
db | CDbConnection | 提供数据库连接。 |
messages | CPhpMessageSource | 为翻译应用消息提供消息源。 |
errorHandler | CErrorHandler | 处理PHP错误和未捕获的异常。 |
securityManager | CSecurityManager | 提供安全相关的服务,像散列和加密。 |
statePersister | CStatePersister | 提供全局状态持续方法。 |
format | CFormatter | 提供一套常用的数据格式化方法。 |
cache | CFileCache | 提供缓存特性。 |
20% | 20% | 40% |
组件名 | 默认的组件类 | 描述 |
session | CHttpSession | 提供 session相关的功能。 |
request | CHttpRequest | 封装$_SERVER变量且在不同的web服务器中解决它的易变性。 也管理从用户发送和接收的cookies。 |
urlManager | CUrlManager | URL 路由。用来生成和解析应用URLs。 |
assetMa 4000 nager | CAssetManager | 管理私有asset文件的发布。 |
user | CWebUser | 描绘用户的session信息。 |
themeManager | CThemeManager | 管理主题。 |
authManager | CPhpAuthManager | 管理基于角色的访问控制(RBAC). |
clientScript | CClientScript | 管理客户端脚本。 (JavaScript and CSS). |
widgetFactory | CWidgetFactory | 创建小挂件并支持小挂件换肤。 |
1.先弄清楚你要配置的 组件所使用的类是什么?(无论是核心组件还是自定义组件)
2. 组件类的公共成员变量都有哪些?(注意从父类继承而来的公共成员变量)
3. 组件类都有哪些settter方法?(注意从父类继承而来的方法)
明白了以上三个要点,我们就可以按规律定义组件的属性,比如对最重要的db组件,我们发现这是一个核心组件,使用的类为CDbConnection, 我们查阅这个类的定义文件,查看这个类的公共成员变量。
——————————————————————————————
——————————————————————————————————
——————————————————————————————————————————————————————————————————————————
相关文章推荐
- 有关Yii的main.php 主配置文件的说明
- Yii框架配置文件main.php分析
- yii 配置文件main.php
- Yii框架配置文件main.php分析
- 详解PHP的Yii框架中日志的相关配置及使用
- PHP的Yii框架中使用数据库的配置和SQL操作实例教程
- 后台系统配置文件admin_main.php
- PHP的Yii框架中使用数据库的配置和SQL操作实例教程
- PHP5.3为Yii PHP框架配置php pdo mysql不成功的解决方案
- Nginx配置PHP的Yii与CakePHP框架的rewrite规则示例
- YII config main.php
- PHP Yii开源框架入门学习(三)Yii的相关配置总结
- yii的数据库配置在config文件夹的connection.php中
- [我的PHP之旅] YII框架学习 01.安装与配置
- php配置open_basedir后及Apache对应配置 和Yii验证码无法出现解决方法
- php配置yii框架
- 详解PHP的Yii框架中日志的相关配置及使用
- php中开启PDO功能的办法(也是yii框架必须要配置成功的前提条件)
- Yii-main配置文件- 常用配置收集
- YIIweb.php中urlManager的配置