Constants in strings

From: Date: Wed, 06 Jul 2011 11:07:04 +0000
Subject: Constants in strings
Groups: php.general 
Request: Send a blank email to php-general+get-313941@lists.php.net to get a copy of this message
Hi all, OK. We all know that constants cannot be accessed directly via their name in double-quoted or heredoc strings. I knew this already but a read of the PHP manual got me thinking. The manual states that to get the $$ value of a variable, the form "{${var}}" should be used. Therefore, I wondered if something similar would work for constants. Attempt 1 (just to be sure): <?php define ('XYZ','ABC'); echo "{XYZ}\n"; ?> Output - {XYZ} Attempt 2: <?php define ('XYZ','ABC'); echo "{{XYZ}}\n"; ?> Output - {{XYZ}} No luck there. I did encounter one oddity though: <?php define ('XYZ','ABC'); echo "{${XYZ}}\n"; ?> Output: PHP Notice: Undefined variable: ABC in /home/wilsond/testScripts/l7.php on line 3 Which appears to mean that PHP is able to pick up the value of the constant and try to access a variable with that name. Any ideas? Cheers Dave

« previous php.general (#313941) next »