用YIIFramework的库开发
- ....
- Yii::createWebApplication($config); //没有run
Yii::import(class1,true),在将class1类文件路径存储时,同时include该文件
注意:你也可以将配置文件分为多个文件, // 例如: db.php, params.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
配置环境常量,不同环境调用不同配置文件和调试级别。
- /**
- * 应用程序环境,可选:development,production,
- */
- 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',
- )
- ),
- ),
- ),
- )
- );
相关推荐
标题提到的“YII 配置文件,不同的环境不同的配置”是一个关键的概念,它涉及到如何根据不同的部署环境(如开发环境、测试环境和生产环境)来定制框架的行为。 在Yii框架中,配置文件主要用于设定应用的运行时参数...
通过对Yii配置文件的详细了解,可以更好地控制和优化应用的行为。 首先,Yii配置文件中可以定义多个模块(Modules),每个模块可以指定它的类路径和相关配置。如示例代码所示,'gii'模块用于代码生成工具,其类路径...
2. **Composer配置文件**:用于管理依赖和自动加载类库。 3. **基础应用模板**:提供一个基本的项目结构,包括公共文件、配置、模型、视图、控制器和路由。 4. **Gii**:这是一个代码生成工具,可以帮助快速生成CRUD...
Yii 的配置管理相当灵活,不局限于单一的 config.php 文件,支持多个配置文件,方便应对复杂场景,如处理多数据库连接。例如,一个项目可以通过配置轻松访问多个数据库。 在部署 Yii 时,首先需要从官方站点...
`Yii2 ConfigLoader` 是一个实用工具,帮助开发者从多个配置文件和环境变量中动态加载和合并配置数组,使得配置更加灵活且易于管理。 `Yii2 ConfigLoader` 的主要功能: 1. **多文件配置合并**:Yii2 允许开发者将...
1. **配置**:在 YII 配置文件中,你需要设置 `CMemCacheHttpSession` 作为默认的会话类,并指定 Memcached 服务器的连接信息。 2. **会话数据存储**:当用户开始会话时,所有与该会话相关的数据(如 $_SESSION ...
3. 修改Yii配置文件。在Yii框架中,配置文件一般位于protected/config目录下的main.php文件中。在这个文件的components数组中需要添加memcache组件的配置信息。具体而言,需要指定memcache类的路径,以及一个或多个...
- **配置文件设置:** 如何设置基本的配置文件以启动 Yii 应用程序。 - **启动测试页面:** 如何运行第一个简单的 Yii 页面以确认一切正常。 - **1.2.3 应用程序工作流程 (Application Workflow)** - **理解请求...
在Yii的`protected/config/main.php`配置文件中,你需要设置`'basePath'=>dirname(__FILE__).DS.'..'`,确保它指向了你的项目根目录。 创建数据库连接。在`protected/config/main.php`中,配置数据库连接。找到`'db...
sass 和less 文件使用PHP 库转换 仅适用于使用PLUpload 库的YII2 上传文件 Plupload - 跨浏览器和平台上传 API 什么是Plupload Plupload 是一个用于处理文件上传的 JavaScript ...在您的 YII 配置文件 {app}/config/we
本文实例讲述了Yii2框架配置文件(Application属性)与调试技巧。分享给大家供大家参考,具体如下: 配置文件 Yii2的主要配置文件config\web.php: <?php $params = require(__DIR__ . '/params.php'); $config = ...
本文实例讲述了Yii参数配置文件params用法。分享给大家供大家参考,具体如下: 1.标题的调用 1.1设置 <?php return [ 'title' => '图书商城', domain => [ 'www' => 'http://super.nat300.top/', 'm' => '...
Yii2框架的基本版(Basic App)是一个适合小型项目或者学习框架的简单启动模板,包括了基本的目录结构、配置文件、数据库迁移工具以及基本的前端和后端控制器。这个版本的更新意味着即使是初学者或小型项目也应该...
yii2-dynamodb 会话yii2 session dynamodb 扩展是一个用于... '/Aws'),Yii2 配置在 Yii 配置文件 (config/web.php) 中设置会话组件设置 'components' => [//.....//.....'session' => ['class' => 'app\components\Dyna
1. **安装与配置**:介绍如何在服务器上安装Yii,以及设置基本的项目环境。 2. **快速入门**:通过一个简单的“Hello, World!”示例来引导开发者了解Yii的基本结构和工作原理。 3. **基础概念**:详细讲解MVC模式,...
在文件名称列表 "ytwo" 中,可能包含了该后台系统的源代码文件,例如配置文件、模型类、控制器、视图文件、公共函数库等。开发者可以通过查看这些文件深入了解系统架构和实现细节,以便进行二次开发或定制。 总的来...
1. **config**:这个目录包含了应用的配置文件,如`web.php`(Web应用的主配置文件)和`console.php`(控制台应用的配置文件)。 2. **controllers**:这里是控制器类的存放地,它们负责处理HTTP请求并调用模型进行...
在部署方面,Yii 2.0.9 支持多种服务器环境,包括Apache和Nginx,并且可以通过配置文件轻松调整。对于开发团队,Yii 2 提供了完善的单元测试和集成测试支持,帮助确保代码质量。 总的来说,Yii 2.0.9 advanced zip ...
8. **安装与配置**:安装 MongoYii 非常简单,只需将扩展添加到 PHP 的 Composer 配置中,并在 Yii 配置文件中进行相应的设置。 9. **文档与社区支持**:MongoYii 有详尽的文档和活跃的社区,开发者可以从中获取...