[PHP4BETA] php3_ini is gone

From: Date: Sat, 10 Apr 1999 21:00:48 +0000
Subject: [PHP4BETA] php3_ini is gone
Groups: php.version4 
Request: Send a blank email to php-version4+get-71@lists.php.net to get a copy of this message
I've spent a few hours today on eliminating all traces of php3_ini. All directives now use the standard php_ini mechanism, which cut the size of the ugly code in PHP3 significantly. A lot of commonly used values are cached in a structure called php_core_globals. This structure is designed to be thread safe without too much further work, so make sure that any global that you may need, and that belongs to php_core - goes in there and not anywhere else (it's defined in php_globals.h). One of the key features of the new ini mechanism is the automatic support for any INI variable in Apache .conf files. All of the php3 .conf directives are now deprecated, and were all replaced by two directives: php4_value and php4_flag. For example, what you would write as php3_safe_mode On in PHP 3.0, you would write as php4_flag safe_mode On in PHP 4.0. The difference is obvious. It would be great if somebody had the time and knowledge to write a sed script that does the following conversions: php3_XXX on -> php4_flag XXX on php3_XXX off -> php4_flag XXX off php3_XXX YYY -> php4_value XXX YYY Flags that may not be set on a per-directory basis are silently ignored (we'd probably have to add in two more directives that can be used in the apache server-wide configuration files, that won't have this limitation). Also, I've changed the way the Apache module handles the per-dir structure (what used to be php3_ini). Rasmus - while this appears to be working perfectly and runs the PHP3 web site very well (http://beta.zend.com), it may be a good idea for you to look around the way it works now. Essentially - there's no dir merger anymore, and it relies on Apache's default behavior of overriding. php3_module_startup() is also called just once at the module initializer, instead of running on each .htaccess parsing. Zeev -- Zeev Suraski <zeev@zend.com> http://www.zend.com/ For a PGP public key, finger bourbon@netvision.net.il -- PHP 4 Beta

« previous php.version4 (#71) next »