您的位置:首页 > 编程语言 > PHP开发

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方法指定的属性

控制台和网络应用都可以用的组件:

组件名默认/建议的组件类描述
coreMessagesCPhpMessageSource为翻译Yii框架消息提供消息源。
dbCDbConnection提供数据库连接。
messagesCPhpMessageSource为翻译应用消息提供消息源。
errorHandlerCErrorHandler处理PHP错误和未捕获的异常。
securityManagerCSecurityManager提供安全相关的服务,像散列和加密。
statePersisterCStatePersister提供全局状态持续方法。
formatCFormatter提供一套常用的数据格式化方法。
cacheCFileCache提供缓存特性。
额外组件,只有网络应用可用:

组件名默认/建议的组件类描述
coreMessagesCPhpMessageSource为翻译Yii框架消息提供消息源。
dbCDbConnection提供数据库连接。
messagesCPhpMessageSource为翻译应用消息提供消息源。
errorHandlerCErrorHandler处理PHP错误和未捕获的异常。
securityManagerCSecurityManager提供安全相关的服务,像散列和加密。
statePersisterCStatePersister提供全局状态持续方法。
formatCFormatter提供一套常用的数据格式化方法。
cacheCFileCache提供缓存特性。
20%20%40%
组件名默认的组件类描述
sessionCHttpSession提供 session相关的功能。
requestCHttpRequest封装$_SERVER变量且在不同的web服务器中解决它的易变性。

也管理从用户发送和接收的cookies。
urlManagerCUrlManagerURL 路由。用来生成和解析应用URLs。
assetMa
4000
nager
CAssetManager管理私有asset文件的发布。
userCWebUser描绘用户的session信息。
themeManagerCThemeManager管理主题。
authManagerCPhpAuthManager管理基于角色的访问控制(RBAC).
clientScriptCClientScript管理客户端脚本。 (JavaScript and CSS).
widgetFactoryCWidgetFactory创建小挂件并支持小挂件换肤。
通过上面分析我们总结一下main.php配置的步骤:

1.先弄清楚你要配置的 组件所使用的类是什么?(无论是核心组件还是自定义组件)

2. 组件类的公共成员变量都有哪些?(注意从父类继承而来的公共成员变量)

3. 组件类都有哪些settter方法?(注意从父类继承而来的方法)

明白了以上三个要点,我们就可以按规律定义组件的属性,比如对最重要的db组件,我们发现这是一个核心组件,使用的类为CDbConnection, 我们查阅这个类的定义文件,查看这个类的公共成员变量。

——————————————————————————————

                                                                                                      ——————————————————————————————————

——————————————————————————————————————————————————————————————————————————
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: