Constants

From: Date: Mon, 03 Dec 2001 18:24:29 +0000
Subject: Constants
Groups: php.dev 
Request: Send a blank email to php-dev+get-72356@lists.php.net to get a copy of this message
Hi, I'm trying to wrap up the class wide constants in ZE2. I implemented them so that class wide constants are case-sensitive. I think in general, although ZE1 allows you to define case-insensitive constants it's better for performance and for general esthetics. I have two issues I'd like to get some input on: a) There are almost no constants in PHP which are case-insensitive (which aren't user land defined with define()). Actually the only ones I could find are in the Zend Engine such as TRUE & FALSE which makes sense. All PHP extensions which use REGISTER_LONG_CONSTANT() and friends use the CONST_CS (case-sensitive flag). I would like to change these macros to *always* register as case-sensitive. Unless I missed some extensions this shouldn't bite anyone as all extensions seem to use CONST_CS. Of course I won't change the special purpose constants such as TRUE & FALSE which are today registered as case-insensitive. What do you guys think? b) REGISTER_MAIN_LONG_CONSTANT() and friends (notice the MAIN) are used to register constants which shouldn't be unloaded when the PHP extension is unloaded. I can't think of many cases where this is applicable. For example, if the pspell extension is unloaded I think all of its constants should be unloaded too. However, this extension is one example of an extension using the _MAIN_ macro. Can each of you check your extension and move to REGISTER_LONG_CONSTANT() unless there's a good reason not to? Thanks, Andi

« previous php.dev (#72356) next »