On Fri, 7 May 2004, Mehdi Achour wrote:
Should I change the documentation to say that ".*" can be a constant name, but
that we recommand [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]* ?
Just leave it as is.
I wanted to complete the TODO commented on languages/constants.xml (Example of valid & invalid constant names)
But anyway...
Derick
Mehdi Achour wrote:
Hi !
The manual reads :
"The name of a constant follows the same rules as any label in PHP. A valid constant name starts with a letter or underscore, followed by any number of letters, numbers, or underscores. As a regular expression, it would be expressed thusly: '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]'"
I know that this is true when trying to echo a constant directly, as the parser raise an error, but you can trick it with a constant() call :
<?php
define(' (\ /) {°_°) () () ( )( ) ', 'barfoo');
echo constant(' (\ /) {°_°) () () ( )( ) ') . chr(10); // outputs : bar
Is it a feature or a bug ? :)
Mehdi Achour
-- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php