Config/Ini.php

Show: PublicProtectedPrivateinherited
Table of Contents
Zend Framework
LICENSE This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to [email protected] so we can send you a copy immediately.
Category
Zend  
Copyright
Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  
Package
Zend_Config  
Version
$Id$  

\Zend_Config_Ini

Package: Zend_Config
Parent(s)
\Zend_Config
Category
Zend  
Copyright
Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  

Properties

>VPropertyprotectedstring $_nestSeparator = '.'
String that separates nesting levels of configuration data identifiers
Default value'.'Details
Type
string
>VPropertyprotectedstring $_sectionSeparator = ':'
String that separates the parent section name
Default value':'Details
Type
string
>VPropertyprotectedboolean $_skipExtends = false
Whether to skip extends or not
Default valuefalseDetails
Type
boolean

Methods

methodpublic__construct(string $filename, mixed $section = null, boolean | array $options = false) : void

Loads the section $section from the config file $filename for access facilitated by nested object properties.

If the section name contains a ":" then the section name to the right is loaded and included into the properties. Note that the keys in this $section will override any keys of the same name in the sections that have been included via ":". If the $section is null, then all sections in the ini file are loaded. If any key includes a ".", then this will act as a separator to create a sub-property. example ini file: [all] db.connection = database hostname = live [staging : all] hostname = staging after calling $data = new Zend_Config_Ini($file, 'staging'); then $data->hostname === "staging" $data->db->connection === "database" The $options parameter may be provided as either a boolean or an array. If provided as a boolean, this sets the $allowModifications option of Zend_Config. If provided as an array, there are three configuration directives that may be set. For example: $options = array( 'allowModifications' => false, 'nestSeparator' => ':', 'skipExtends' => false, );
Parameters
NameTypeDescription
$filenamestring
$sectionmixed
$optionsboolean | array
Throws
ExceptionDescription
\Zend_Config_Exception
methodprotected_loadIniFile(string $filename) : array

Load the ini file and preprocess the section separator (':' in the section name (that is used for section extension) so that the resultant array has the correct section names and the extension information is stored in a sub-key called ';extends'. We use ';extends' as this can never be a valid key name in an INI file that has been loaded using parse_ini_file().

Parameters
NameTypeDescription
$filenamestring
Returns
TypeDescription
array
Throws
ExceptionDescription
\Zend_Config_Exception
methodprotected_parseIniFile(string $filename) : array

Load the INI file from disk using parse_ini_file(). Use a private error handler to convert any loading errors into a Zend_Config_Exception

Parameters
NameTypeDescription
$filenamestring
Returns
TypeDescription
array
Throws
ExceptionDescription
\Zend_Config_Exception
methodprotected_processKey(array $config, string $key, string $value) : array

Assign the key's value to the property list. Handles the nest separator for sub-properties.

Parameters
NameTypeDescription
$configarray
$keystring
$valuestring
Returns
TypeDescription
array
Throws
ExceptionDescription
\Zend_Config_Exception
methodprotected_processSection(array $iniArray, string $section, array $config = array()) : array

Process each element in the section and handle the ";extends" inheritance key. Passes control to _processKey() to handle the nest separator sub-property syntax that may be used within the key name.

Parameters
NameTypeDescription
$iniArrayarray
$sectionstring
$configarray
Returns
TypeDescription
array
Throws
ExceptionDescription
\Zend_Config_Exception
Documentation was generated by phpDocumentor 2.2.0 .