欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

Yii框架预定义的组件有哪些?

程序员文章站 2022-06-02 16:07:55
...
使用PHP 的Yii框架,需要配置一个很重要的文件:main.php。配置组件,需要通过'class'字段指定组件所属类名,但是有些就不需要指定,因为它们是Yii框架预定义好的组件,如'db'组件。

那么,大家知道Yii预定义了哪些组件吗,它们都是在哪里预定义的?

首先,在CApplication.php文件(https://github.com/yiisoft/yii/blob/1.1.16/framework/base/CApplication.php)中,预定义了如下组件:

$components=array(
'coreMessages'=>array(
'class'=>'CPhpMessageSource',
'language'=>'en_us',
'basePath'=>YII_PATH.DIRECTORY_SEPARATOR.'messages',
),
'db'=>array(
'class'=>'CDbConnection',
),
'messages'=>array(
'class'=>'CPhpMessageSource',
),
'errorHandler'=>array(
'class'=>'CErrorHandler',
),
'securityManager'=>array(
'class'=>'CSecurityManager',
),
'statePersister'=>array(
'class'=>'CStatePersister',
),
'urlManager'=>array(
'class'=>'CUrlManager',
),
'request'=>array(
'class'=>'CHttpRequest',
),
'format'=>array(
'class'=>'CFormatter',
),
);

然后在CWebApplication.php文件(https://github.com/yiisoft/yii/blob/1.1.16/framework/web/CWebApplication.php),预定义了如下组件:

'Session'=>array(
'class'=>'CHttpSession',
),
'assetManager'=>array(
'class'=>'CAssetManager',
),
'user'=>array(
'class'=>'CWebUser',
),
'themeManager'=>array(
'class'=>'CThemeManager',
),
'authManager'=>array(
'class'=>'CPhpAuthManager',
),
'clientScript'=>array(
'class'=>'CClientScript',
),
'widgetFactory'=>array(
'class'=>'CWidgetFactory',
),

以上就介绍了Yii框架预定义的组件有哪些?,包括了Session,Application,github方面的内容,希望对PHP教程有兴趣的朋友有所帮助。