使用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教程有兴趣的朋友有所帮助。
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号