Zend Framework教程之Zend_Config_Ini用法分析_php实例

本文实例讲述了Zend Framework教程之Zend_Config_Ini用法。分享给大家供大家参考,具体如下:

Zend_Config_Ini允许开发者通过嵌套的对象属性语法在应用程序中用熟悉的 INI 格式存储和读取配置数据。INI 格式在提供拥有配置数据键的等级结构和配置数据节之间的继承能力方面具有专长。配置数据等级结构通过用点或者句号 (.)分离键值。一个节可以扩展或者通过在节的名称之后带一个冒号(:)和被继承的配置数据的节的名称来从另一个节继承。

parse_ini_file

Zend_Config_Ini 使用parse_ini_file()PHP 函数。请复习这个文档了解它的特定行为,它在Zend_Config_Ini中使用,例如true, false, yes, no 和 null 这些特殊的值如何操作。

键分离器

缺省地,键分离器字符是句号(.)。然而,这个可以通过当构造Zend_Config_Ini对象时修改$options key 'nestSeparator' 被修改。例如:

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

例 :使用 Zend_Config_Ini

这个例子示例了从 INI 文件加载配置数据的Zend_Config_Ini的基本用法。

在这个例子中有生产系统(production system)和开发系统(staging system)的配置数据。

因为开发系统配置数据和生产系统的配置数据类似,所以开发系统的节从生产系统的节继承。

在这个案例中,结果(decision)是任意的并且它可以反过来做,即生产系统节从开发系统节继承,尽管这不可能用于更复杂的情形。

接着,假定下面的配置数据包含在/path/to/config.ini中:

生产站点配置数据

[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

开发站点配置数据从生产站点配置数据集成并如果需要可以重写

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

接着,假定开发者需要从INI文件取开发配置数据。这非常简单,只要指定INI文件和开发系统节就可以加载这些数据了:

$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 构造器参数:


参数 注释
$filename 要加载的 INI 文件。
$section 在INI文件中 [section] (节)将被加载。把这个参数设置为null,所有的节将被加载。另外,一个节名称的数组被提供给加载多个节。
$options = false 选项数组。下面的键被支持:
  • allowModifications:设置为true 允许随后加载文件更改。缺省为false
  • nestSeparator: 设置嵌套字符。缺省为"."

更多关于zend相关内容感兴趣的读者可查看本站专题:《Zend FrameWork框架入门教程》、《php优秀开发框架总结》、《Yii框架入门及常用技巧总结》、《ThinkPHP入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于Zend Framework框架的PHP程序设计有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索framework
, zend
Zend_Config_Ini
zend framework实例、zend config.h、php.ini zend 配置、php.ini zend、zend framework,以便于您获取更多的相关知识。

时间: 2024-08-29 13:26:22

Zend Framework教程之Zend_Config_Ini用法分析_php实例的相关文章

Zend Framework教程之Zend_Db_Table_Row用法实例分析_php实例

本文实例讲述了Zend Framework教程之Zend_Db_Table_Row用法.分享给大家供大家参考,具体如下: 1. 简介 Zend_Db_Table_Row是Zend Framework的行数据网关.通常来说,你不可以自己实例化Zend_Db_Table_Row, 而是通过调用Zend_Db_Table::find()方法或者Zend_Db_Table::fetchRow()方法将Zend_Db_Table_Row作为 结果数据返回过来.一旦你得到来一个Zend_Db_Table_R

Zend Framework教程之Application用法实例详解_php实例

本文实例讲述了Zend Framework教程之Application用法.分享给大家供大家参考,具体如下: Zend_Application是Zend Framework的核心组件.Zend_Application为Zend Framework应用程序提供基本功能,是程序的入口点.它的主要功能有两个:装载配置PHP环境(包括自动加载),并引导应用程序. 通常情况下,通过配置选项配置Zend_Application构造器,但也可以完全使用自定义方法配置.以下是两个使用用例. Zend_Appli

Zend Framework教程之Autoloading用法详解_php实例

本文实例讲述了Zend Framework教程之Autoloading用法.分享给大家供大家参考,具体如下: 一.概述 自动加载是一种机制,无需依赖手动编写PHP代码.参考»PHP手册自动加载,一旦自动加载器被定义,你试图使用一个没有定义的类或接口的情况下,它会自动被调用. 使用自动加载,在项目中你不必担心类的存放位置.定义一个良好定义的自动加载器,您不需要考虑一个类文件相对于当前类文件的位置,您只需使用类,自动加载器将自动查找文件. 此外,自动加载,确保只加载一次,提升了性能 -所以可以用它替

Zend Framework入门教程之Zend_Mail用法示例_php实例

本文实例讲述了Zend Framework入门教程之Zend_Mail用法.分享给大家供大家参考,具体如下: Zend_Mail组件提供了通用化的功能来创建和发送文本. Zend_Mail通过PHP内建的mail()函数或者直接通过SMTP连接来发送邮件. 一个简单的邮件由收件人.主题.邮件内容以及发件人等内容组成. 步骤如下 1.创建对象 2.设置邮件内容 3.发送 案例: <?php require_once "Zend/Mail.php"; $my_mail = new Z

Zend Framework教程之Zend_Db_Table用法详解_php实例

本文实例讲述了Zend_Db_Table用法.分享给大家供大家参考,具体如下: 1. 简介 Zend_Db_Table 是Zend Framework的表模块.它通过zend_db_adapter连接到 数据库,为数据库模式检查表对象,并对该表进行操作和查询. 2. 开始 首先需要为抽象类zend_db_table(ares注:该类为抽象类,所以不能直接实例 化,只能先继承该类,然后实例化子类)设定一个默认对数据库adapter;除非你 指定其他类型数据库adapter,否则,所有的zend_d

Zend Framework框架路由机制代码分析_php实例

本文分析了Zend Framework框架路由机制代码.分享给大家供大家参考,具体如下: 在框架中,有关路由的调用关系为: 1.apache的mod_rewrite模块把请求路由到框架的启动脚本,一般是index.php: 2.前端控制器Zend_Controller_Front通过dispatch函数进行请求分发: 3.路由器Zend_Controller_Router_Rewrite通过route函数处理路由,对路由器中已有的路由规则,按照加入顺序的逆序(类似于栈,后进先出)对每个route

YII Framework的filter过滤器用法分析_php实例

本文实例讲述了YII Framework的filter过滤器用法.分享给大家供大家参考,具体如下: 首先看官方给出的说明文档,什么是过滤器,过滤器的作用,过滤器的规则,过滤器的定义方法等等. 然后对过滤器进行一个总结. http://www.yiiframework.com/doc/guide/1.1/zh_cn/basics.controller 过滤器是一段代码,可被配置在控制器动作执行之前或之后执行.例如, 访问控制过滤器将被执行以确保在执行请求的动作之前用户已通过身份验证:性能过滤器可用

Zend Framework教程之MVC框架的Controller用法分析_php实例

本文讲述了Zend Framework教程之MVC框架的Controller用法.分享给大家供大家参考,具体如下: 这里简单讲讲MVC模式中Controller的基本使用方法. 基本使用实例: root@coder-671T-M:/www/zf_demo1/application# tree. ├── Bootstrap.php ├── configs │   └── application.ini ├── controllers │   ├── ErrorController.php │  

Zend Framework教程之Zend_Registry对象用法分析_php实例

本文实例讲述了Zend Framework教程之Zend_Registry对象用法.分享给大家供大家参考,具体如下: 使用对象注册表(Registry) 对象注册表(或称对象仓库)是一个用于在整个应用空间(application space)内存储对象和值的容器.通过把对象存储在其中,我们可以在整个项目的任何地方使用同一个对象.这种机制相当于一种全局存储. 我们可以通过Zend_Registry类的静态方法来使用对象注册表,另外,由于该类是一个数组对象,你可以使用数组形式来访问其中的类方法. 1