应用是指执行用户的访问指令。其主要任务是解析用户指令,并将其分配给相应的控制器以进行进一步的处理。 应用同时也是一个存储参数的地方。因为这个原因,应用一般被称为“前端控制器”。
入口脚本将应用创建为一个单例. 应用单例可以在任何位置通过 Yii::app() 来访问.
应用配置 (推荐学习:yii教程)
默认情况下, 应用是 CWebApplication 类的一个实例. 要对其进行定制, 通常是在应用实例被创建的时候提供一个配置文件 (或数组) 来初始化其属性值. 另一个定制应用的方法就是扩展 CWebApplication 类.
配置是一个键值对的数组. 每个键名都对应应用实例的一个属性, 相应的值为属性的初始值. 举例来说, 下面的代码设定了应用的 名称 和 默认控制器属性.
array( 'name'=>'Yii Framework', 'defaultController'=>'site', )
我们一般将配置保存在一个单独的PHP代码里(e.g. protected/config/main.php). 在这个代码里,我们返回以下参数数组,
return array(...);
为执行这些配置,我们一般将这个文件作为一个配置,传递给应用的构造器。或者象下述例子这样传递给Yii::createWebApplication() 我们一般在 entry script里界定这些配置:
$app=Yii::createWebApplication($configFile);
提示: 如果应用配置非常复杂,我们可以将这分成几个文件,每个文件返回一部分配置参数。接下来,我们在主配置文件里用PHP include() 把其它 配置文件合并成一个配置数组。
应用的主目录
应用的主目录是指包含所有安全系数比较高的PHP代码和数据的根目录。 在默认情况下,这个目录一般是入口代码所在目录的一个目录: protected 。 这个路径可以通过在application configuration里设置 basePath来改变.
普通用户不应该能够访问应用文件夹里的内容。在 Apache HTTP 服务器里, 我们可以在这个文件夹里放一个 .htaccess 文件. .htaccess的文件内容是这样的:
deny from all
应用的生命周期
当处理一个用户请求时,一个应用程序将经历如下生命周期:
建立类自动加载器和错误处理;
注册核心应用组件;
读取应用配置;
用CApplication::init()初始化应用程序。
读取静态应用组件;
触发onBeginRequest事件;
处理用户请求:
解析用户请求;
创建控制器;
执行控制器;
触发onEndRequest事件;
以上是yii应用什么意思的详细内容。更多信息请关注PHP中文网其他相关文章!