Re: Supporting version specific INI files as well as SAPI specific INI files.

From: Date: Sun, 30 Jul 2006 15:25:03 +0000
Subject: Re: Supporting version specific INI files as well as SAPI specific INI files.
References: 1 2 3  Groups: php.internals 
Request: Send a blank email to internals+get-25068@lists.php.net to get a copy of this message
http://rquadling.php1h.com/ini_patch.diff.txt contains the same attachment. On 30/07/06, Richard Quadling <rquadling@googlemail.com> wrote:
I've attached the changes that have been requested. The idea is that you can have settings which are from global (not version specific) to the exact PHP version. Including -dev releases. php [major [.minor [.release [ extra]]]] -sapi.ini or SOFTWARE\\PHP[\\major [.minor [.release [.extra]]]\\ sort of thing. Only 1 ini file is picked up, but with the registry, a setting in \PHP\5\ will be overwritten by a setting in \PHP\5.1\ (assuming it exists) and that by \PHP\5.1.4\ On 30/07/06, Andi Gutmans <andi@zend.com> wrote: Unless there are objections we can commit it for you. One change I'd like you to make though is to remove the V in the registry before the version #. Makes it harder for automated programs. It should just be SOFTWARE\\PHP\\5\\IniFilePath Btw, one thing I didn't understand. Are you cascading 5 and 5.1 and 5.1.4? That's weird.
-----Original Message----- From: Richard Quadling [mailto:rquadling@googlemail.com] Sent: Sunday, July 30, 2006 6:53 AM To: internals@lists.php.net Subject: Re: [PHP-DEV] Supporting version specific INI files as well as SAPI specific INI files. Do I have to do anything else to get this patch submitted? Is there anything more required within it? Where do I go from here? Do I need a sponsor? Do I have to get a CVS account with adequate karma to commit the patch myself? Anyone? Is there anyone out there? Patch can be retrieved from http://rquadling.php1h.com/ini_patch.diff.txt Regards, Richard Quadlng. On 18/07/06, Richard Quadling <rquadling@googlemail.com> wrote:
The supplied patch enhances PHP's .INI from ... php-%sapi-name%.ini to ... php%php-version%-%sapi-module-name%.ini
php%php-major-version%.%php-minor-version%.%php-release-version%-%sapi
-module-name%.ini php%php-major-version%.%php-minor-version%-%sapi-module-name%.ini php%php-major-version%-%sapi-module-name%.ini with the original as a fallback. e.g. from php-isapi.ini to php5.2.0-dev-isapi.ini php5.1.4-isapi.ini php5.0-isapi.ini php5-isapi.ini php-isapi.ini (Just examples - all combinations are valid). With the INI files, the most specific one is looked for
first and each
check gets less specific until a file is found. The supplied patches also do the same work with the Windows
Registry.
Currently the registry key examined is ... SOFTWARE\\PHP This is extended to ... SOFTWARE\\PHP\\V5\\Per Directory Values SOFTWARE\\PHP\\V5.1\\Per Directory Values SOFTWARE\\PHP\\V5.1.4\\Per Directory Values SOFTWARE\\PHP\\V5.2.0-dev\\Per Directory Values The more specific settings will override the less specific settings. And the supplied patches allow for the location of the ini
file on a
per PHP version basis... SOFTWARE\\PHP\\V5\\IniFilePath SOFTWARE\\PHP\\V5.1\\IniFilePath SOFTWARE\\PHP\\V5.1.4\\IniFilePath SOFTWARE\\PHP\\V5.2.0-dev\\IniFilePath The more specific paths will be examined before the less
specific paths.
NOTE: I am NOT able to verify this code as I am not yet able to compile PHP. I'm still learning this, so please accept my apologies for any syntax errors, bugs. I'm more than willing to fix
them! And if
anyone has used MS VC++ Express Edition to build PHP, I'd be REALLY grateful to have any notes/comments about the process. Thanks, Richard Quadling. -- ----- Richard Quadling Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&amp;r=213474731
-- ----- Richard Quadling Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&amp;r=213474731 "Standing on the shoulders of some very clever giants!" -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php
-- ----- Richard Quadling Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&amp;r=213474731 "Standing on the shoulders of some very clever giants!"
-- ----- Richard Quadling Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&amp;r=213474731 "Standing on the shoulders of some very clever giants!"

« previous php.internals (#25068) next »