I've been tinkering with ZF since 0.2.0 came out (woohoo, how many hours has it been out? ;) ) so forgive me if this way off base on the intended behavior of Zend_Config(_Ini).

It seems that when using the 'dot' notation and extending another section of the .ini file (see the example .ini file and PHP source below) not all "properties" (for lack of a better word) are being extended as I would expect.

Please see the bottom of the email for the PHP source that better illustrates what I mean. I've added the Zend::dump() output to the comments to show what I am seeing on my setup.

I can create an issue if this is actually an issue, just point me to the proper site (http://framework.zend.com/issues/secure/ Dashboard.jspa ?).

From Example 3.3 on:

http://framework.zend.com/manual/en/ zend.config.classes.ini.html#zend.config.classes.ini.introduction


Using this .ini file from the example:

; Production site configuration data
[production]
webhost           = www.example.com
database.type     = pdo_mysql
database.host     = db.example.com
database.username = dbuser
database.password = secret
database.name     = dbname

; Staging site configuration data inherits from production and
; overrides values as necessary
[staging]
extends = production
database.host     = dev.example.com
database.username = devuser
database.password = devsecret


Slightly modified excerpt from PHP source the example (please assume I'm using __autoload()):

$config = new Zend_Config_Ini('/path/to/example.ini', 'staging');
Zend::dump($config->database->host); // prints string(15) "dev.example.com" (from [staging]) Zend::dump($config->database->type); // prints NULL; should be printing string(9) "pdo_mysql" (from [production]) Zend::dump($config->database->name); // prints NULL; should be printing string(6) "dbname" (from [production]) Zend::dump($config->database->username); // prints string(7) "devuser" (from [staging])

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to