用YIIFramework的库开发
.... Yii::createWebApplication($config); //没有run
Yii::import(class1,true),在将class1类文件路径存储时,同时include该文件
注意:你也可以将配置文件分为多个文件, // 例如db.product.php,db.development.php,params.development.php等等
main.php
<?php // 取消下行的注释,来定义一个路径别名 // Yii::setPathOfAlias('local','path/to/local-folder'); // 这是 Web 应用配置的主体部分。任何可写的 // CWebApplication 属性可以在这里配置。 $config = array( // protected 目录的基础路径 // 使用 Yii::app()->basePath 来访问 'basePath' => dirname(__FILE__) . DIRECTORY_SEPARATOR . '..', // 应用的名字 // 使用 Yii::app()->name 来访问 'name' => 'My website', //路径别名 // 可以是应用内部的路径,也可以是外部资源 'aliases' => array( 'myExternalFramework' => dirname(__FILE__) . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'myexternalframework' ), //维护程序时,这样子所有的请求转发到一个地方 'catchAllRequest' => array('site/all'), //如何在应用程序处理请求之前执行一段操作?当然这个function方法要存在index.php 'onBeginRequest' => 'function', //controller path 'controllerMap' => array('myController' => 'myExternalFramework.controllers.MyController'), // 默认的 controller 'defaultController' => 'site', // 用户语言(for Locale) 'language' => 'es', //信息和视图的语言 'sourceLanguage' => 'es', 'timeZone' => 'Asia/Shanghai', 'theme' => 'default', // 使用的字符集 'charset' => 'utf-8', // 预载入的应用组件 'preload' => array('log'), // 自动载入的类 'import' => array( 'application.models.*', 'application.components.*', ), // 可以使用 Yii::app()->params['paramName'] 访问的应用级别的参数 'params' => require(dirname(__FILE__) . '/params.php'), // 在 params.php 中你需要返回这个数组:Yii::app()->setParams设置的只能用Yii::app()->params['xxx']这种数组的方式访问 // return array('adminEmail'=>'info@example.com'); // 应用组件的配置 'components' => array( // assets, 参考www.yiiframework.com/doc/api/CAssetManager 'assetManager' => array( // 改变磁盘上的路径 'basePath' => dirname(__FILE__) . '/../../assets/', // 改变url 'baseUrl' => '/web/assets/' ), 'request' => array( 'enableCsrfValidation' => true, //如果防止post跨站攻击 'enableCookieValidation' => true, //防止Cookie攻击 ), // 缓存 'cache' => array( 'class' => 'A cache class, like: system.caching.CApcCache', ), 'session' => array( // memcache session cache 'class' => 'CCacheHttpSession', 'autoStart' => 1, 'sessionName' => 'frontend', 'cookieParams' => array('lifetime' => '3600', 'path' => '/', 'domain' => '.test.com', 'httponly' => '1'), 'cookieMode' => 'only', ), // 你可以使用 scriptMap 来配置脚本来自哪里。 // 对于一个生产环境的配置,如下 'clientScript' => array( 'scriptMap' => array( 'register.js' => 'site.min.js', 'login.js' => 'site.min.js', ), ), // 对于一个开发环境,可以这样做 'clientScript' => array( 'scriptMap' => array( 'register.js' => 'register.js', 'login.js' => 'login.js', ), ), ), ); $database = require(dirname(__FILE__) . DIRECTORY_SEPARATOR . 'db.php'); if (!empty($database)) { $config['components'] = CMap::mergeArray($config['components'],$database); // Yii::app()->setComponents($database); } return $config;
db.php
<?php return array( 'db' => array( 'connectionString' => 'mysql:host=192.168.1.240;dbname=tttt', 'emulatePrepare' => true, 'username' => 'root', 'password' => '****', 'charset' => 'utf8', ), 'card' => array( 'class' => 'CDbConnection',// 'connectionString' => 'mysql:host=192.168.1.240;dbname=card', 'emulatePrepare' => true, 'username' => 'root', 'password' => '**', 'charset' => 'utf8', ), );
params.php
<?php return array( 'adminEmail'=>'info@example.com', 'pagesize'=>'100', 'pager'=>array( 'class'=>'PagerWidget', 'maxButtonCount'=>8, 'firstPageLabel'=>'首页', 'lastPageLabel'=>'末页', 'nextPageLabel'=>'下一页', 'prevPageLabel'=>'上一页', 'header'=>'', 'cssFile'=>false, ), );
index.php
配置环境常量,不同环境调用不同配置文件和调试级别。
// 运行环境定义 目前支持环境配置[live:线上环境 test:测试环境 dev:开发环境 local:本地环境] if (stripos($_SERVER['HTTP_HOST'],'m.test.cn') !== false){ define('APP_ENV','production'); }elseif (stripos($_SERVER['HTTP_HOST'],'m.test.com') !== false){ define('APP_ENV','test'); } defined('APP_ENV') or define('APP_ENV','development'); // change the following paths if necessary if (APP_ENV == 'production') { error_reporting(0); $yii=dirname(__FILE__).'/framework/yiilite.php'; defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',1); } else { $yii=dirname(__FILE__).'/framework/yii.php'; // remove the following lines when in production mode defined('YII_DEBUG') or define('YII_DEBUG',true); // specify how many levels of call stack should be shown in each log message defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',3); } $config=dirname(__FILE__).'/protected/config/'.APP_ENV.'.php'; require('path/to/globals.php'); //见附件 require_once($yii); Yii::createWebApplication($config)->run();
development.php
开启weblog,profile,数据库性能显示,数据库查询参数记录,GII
production.php
开启数据库结构缓存,关闭错误显示
<?php return CMap::mergeArray( require(dirname(__FILE__).'/main.php'), array( 'components'=>array( // uncomment the following to use a MySQL database 'log'=>array( 'class'=>'CLogRouter', 'routes'=>array( array( 'class'=>'CFileLogRoute', 'levels'=>'error, warning', ) ), ), ), ) );
相关推荐
这使得在不同环境中使用不同的配置变得更加简单,无需修改配置文件。例如,数据库密码可以通过环境变量安全地存储,而不是硬编码在配置文件中。 4. **动态加载**:ConfigLoader 在运行时加载配置,这意味着开发者...
2. **Composer配置文件**:用于管理依赖和自动加载类库。 3. **基础应用模板**:提供一个基本的项目结构,包括公共文件、配置、模型、视图、控制器和路由。 4. **Gii**:这是一个代码生成工具,可以帮助快速生成CRUD...
通过访问 `http://127.1.1.1/APP目录/yii目录/requirements/` 检查系统是否满足 Yii 的部署要求,并根据提示调整环境配置。 接着,利用 `yiic` 工具进行部署,需先将 PHP 解析器路径和 `yiix.bat` 添加到系统环境...
在Yii的`protected/config/main.php`配置文件中,你需要设置`'basePath'=>dirname(__FILE__).DS.'..'`,确保它指向了你的项目根目录。 创建数据库连接。在`protected/config/main.php`中,配置数据库连接。找到`'db...
在部署方面,Yii 2.0.9 支持多种服务器环境,包括Apache和Nginx,并且可以通过配置文件轻松调整。对于开发团队,Yii 2 提供了完善的单元测试和集成测试支持,帮助确保代码质量。 总的来说,Yii 2.0.9 advanced zip ...
2. **配置文件** (config目录):包含了应用的配置信息,如数据库连接、路由规则、组件配置等。 3. **公共文件** (web目录):存储前端资源,如CSS、JavaScript和图片,以及应用的入口脚本。 4. **模型** (models...
1. **安装与配置**:介绍如何在服务器上安装Yii,以及设置基本的项目环境。 2. **快速入门**:通过一个简单的“Hello, World!”示例来引导开发者了解Yii的基本结构和工作原理。 3. **基础概念**:详细讲解MVC模式,...
Yii框架会按照一定的顺序加载这些配置文件,后面的配置文件会覆盖前面的同名参数,这为环境特定的参数配置提供了便利。 具体加载顺序如下: ***mon/config/*** ***mon/config/params-local.php 3. frontend/config/...
其中,安装部分会指导如何设置开发环境,包括PHP版本要求、Web服务器配置以及如何快速启动一个基本的Yii项目。配置部分解释了如何定制框架的行为,如修改默认设置、添加自定义组件等。 模型部分,会讲解如何创建和...
3. 配置管理:Yii 的配置系统允许开发者通过配置文件定义应用的运行时参数,如数据库连接信息、类路径等,使应用更具灵活性和可扩展性。 4. 自动化测试:Yii 支持单元测试和功能测试,提供 Codeception 测试框架...
Yii2 Configloader从配置文件和环境变量构建配置数组。 功能您可以使用此扩展来解决以下一些或全部任务:为Yii2 Configloader构建Yii2配置阵列从配置文件和环境变量构建配置阵列。 功能您可以使用此扩展来解决以下...
Yii2框架的基本版(Basic App)是一个适合小型项目或者学习框架的简单启动模板,包括了基本的目录结构、配置文件、数据库迁移工具以及基本的前端和后端控制器。这个版本的更新意味着即使是初学者或小型项目也应该...
- **作用**: 初始化环境变量、加载配置文件、创建Web应用程序实例并运行。 - **示例代码**: ```php $yii = dirname(__FILE__) . '/../../framework/yii.php'; // Yii框架位置 $config = dirname(__FILE__) . '/...
3. **common**:这个目录包含了整个应用共用的代码,如模型、库函数、配置文件等。 4. **config**:配置文件夹,存储了不同环境下的配置信息,如数据库连接、路由规则等。 5. **console**:控制台应用程序目录,...
Yii 2.0.9 basic 版本包含了框架的基本组成部分,如核心库、公共配置文件、基本的项目结构以及一个简单的 Web 服务器配置。这个版本适合那些想要快速启动新项目或者学习 Yii 2 框架的开发者。它包含了必要的文件和...
应用程序负责实例化控制器,并根据配置文件和用户请求来协调整个应用的运行流程。通过全局函数`Yii::app()`,可以从框架中的任何位置访问当前的应用程序实例。 #### 四、扩展与定制 随着应用功能的增加和复杂性的...
完成环境配置后,就可以开始创建一个新的Yii应用了。打开命令提示符,导航到Yii框架的`framework`目录。然后,运行命令`yiic webapp ../project`来创建一个名为“demo”的应用。这个命令会在site目录下创建一个新的...
2. **加载配置文件:** 加载配置文件,将配置信息应用于Application对象。 3. **组件注册:** 注册各种组件和服务提供者,如DB连接、URL管理器等。 4. **请求解析:** 解析用户的HTTP请求,确定请求的路由。 5. **...
通过这篇文章,我们可以学习到如何配置Yii项目以适应SAE的环境,包括设置配置文件、处理存储和数据库连接等问题。在SAE上,由于没有传统意义上的文件系统,所以通常使用其提供的KVDB(键值数据库)来存储数据,而...