欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Zend Framework教程之Zend_Config_Ini用法分析

 更新時(shí)間:2016年03月23日 09:14:56   作者:haiwei.sun  
這篇文章主要介紹了Zend Framework教程之Zend_Config_Ini用法,較為詳細(xì)的分析了Zend_Config_Ini操作配置數(shù)據(jù)的相關(guān)技巧,需要的朋友可以參考下

本文實(shí)例講述了Zend Framework教程之Zend_Config_Ini用法。分享給大家供大家參考,具體如下:

Zend_Config_Ini允許開發(fā)者通過嵌套的對象屬性語法在應(yīng)用程序中用熟悉的 INI 格式存儲和讀取配置數(shù)據(jù)。INI 格式在提供擁有配置數(shù)據(jù)鍵的等級結(jié)構(gòu)和配置數(shù)據(jù)節(jié)之間的繼承能力方面具有專長。配置數(shù)據(jù)等級結(jié)構(gòu)通過用點(diǎn)或者句號 (.)分離鍵值。一個(gè)節(jié)可以擴(kuò)展或者通過在節(jié)的名稱之后帶一個(gè)冒號(:)和被繼承的配置數(shù)據(jù)的節(jié)的名稱來從另一個(gè)節(jié)繼承。

parse_ini_file

Zend_Config_Ini 使用parse_ini_file()PHP 函數(shù)。請復(fù)習(xí)這個(gè)文檔了解它的特定行為,它在Zend_Config_Ini中使用,例如true, false, yes, no 和 null 這些特殊的值如何操作。

鍵分離器

缺省地,鍵分離器字符是句號(.)。然而,這個(gè)可以通過當(dāng)構(gòu)造Zend_Config_Ini對象時(shí)修改$options key 'nestSeparator' 被修改。例如:

$options['nestSeparator'] = ':';
$config = new Zend_Config_Ini('/path/to/config.ini',
               'staging',
               $options);

例 :使用 Zend_Config_Ini

這個(gè)例子示例了從 INI 文件加載配置數(shù)據(jù)的Zend_Config_Ini的基本用法。

在這個(gè)例子中有生產(chǎn)系統(tǒng)(production system)和開發(fā)系統(tǒng)(staging system)的配置數(shù)據(jù)。

因?yàn)殚_發(fā)系統(tǒng)配置數(shù)據(jù)和生產(chǎn)系統(tǒng)的配置數(shù)據(jù)類似,所以開發(fā)系統(tǒng)的節(jié)從生產(chǎn)系統(tǒng)的節(jié)繼承。

在這個(gè)案例中,結(jié)果(decision)是任意的并且它可以反過來做,即生產(chǎn)系統(tǒng)節(jié)從開發(fā)系統(tǒng)節(jié)繼承,盡管這不可能用于更復(fù)雜的情形。

接著,假定下面的配置數(shù)據(jù)包含在/path/to/config.ini中:

生產(chǎn)站點(diǎn)配置數(shù)據(jù)

[production]
webhost         = www.example.com
database.adapter     = pdo_mysql
database.params.host   = db.example.com
database.params.username = dbuser
database.params.password = secret
database.params.dbname  = dbname

開發(fā)站點(diǎn)配置數(shù)據(jù)從生產(chǎn)站點(diǎn)配置數(shù)據(jù)集成并如果需要可以重寫

[staging : production]
database.params.host   = dev.example.com
database.params.username = devuser
database.params.password = devsecret

接著,假定開發(fā)者需要從INI文件取開發(fā)配置數(shù)據(jù)。這非常簡單,只要指定INI文件和開發(fā)系統(tǒng)節(jié)就可以加載這些數(shù)據(jù)了:

$config = new Zend_Config_Ini('/path/to/config.ini', 'staging');
echo $config->database->params->host;  // 輸出 "dev.example.com"
echo $config->database->params->dbname; // 輸出 "dbname"

注意

表 Zend_Config_Ini 構(gòu)造器參數(shù):

參數(shù)注釋
$filename要加載的 INI 文件。
$section在INI文件中 [section] (節(jié))將被加載。把這個(gè)參數(shù)設(shè)置為null,所有的節(jié)將被加載。另外,一個(gè)節(jié)名稱的數(shù)組被提供給加載多個(gè)節(jié)。
$options = false選項(xiàng)數(shù)組。下面的鍵被支持:
  • allowModifications:設(shè)置為true 允許隨后加載文件更改。缺省為false

  • nestSeparator: 設(shè)置嵌套字符。缺省為"."

更多關(guān)于zend相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Zend FrameWork框架入門教程》、《php優(yōu)秀開發(fā)框架總結(jié)》、《Yii框架入門及常用技巧總結(jié)》、《ThinkPHP入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總

希望本文所述對大家基于Zend Framework框架的PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評論