文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Zend Framework中缓存Application.ini配置文件

Zend Framework中缓存Application.ini配置文件

时间:2010-07-23  来源:yueming

ZendChina7月13日:在用 Zend Framework 构建应用程序时,我们通常以 index.php 作为入口文件,并在其中创建 Zend_Application 对象及完成配置,例如读入名为 Application.ini 的配置文件。
然而每次请求都读入并解析 Application.ini 配置文件,显然也是不小的开销。

翻查 Zend_Application::_loadConfig() 函数,我们发现参数中允许传入数组,这就启发我们可以用简单的方法来避免每次都解析 ini 配置。

在 index 中 :

<?php

// Application.ini.inc 缓存的配置文件
defined('CONFIG_INC')
||define('CONFIG_INC',
PROJECT_ROOT.'/library/Kbs/Config/Application.ini.inc');

// 如果没有缓存,我们就使用默认配置文件
$configFile=CONFIG_INC;
$noConfigCache=false;
if(false==
is_file(CONFIG_INC)){
$configFile=PROJECT_ROOT.'/library/Kbs/Config/Application.ini';
$noConfigCache=true;
}

// Zend_Application
require_once'Zend/Application.php';

// 创建 application
$application=newZend_Application(
APPLICATION_ENV,
$configFile
);

// 如果缓存文件不存在,我们创建它
// 只用于 production 环境
if($noConfigCacheand('production'==APPLICATION_ENV)){
$configs='<?php'.
PHP_EOL
.'return '
.
var_export($application->getOptions(),true).PHP_EOL
.'?>';
file_put_contents(CONFIG_INC,$configs);
}


?>

这样当应用程序检测到 Application.ini.inc 缓存文件存在时,就会自动载入,并读取经过解析的数组形式的配置。
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载