У меня есть переменная, определенная с помощью define (). Я хочу сохранить часть имени этой переменной в обычной переменной php $, а затем получить доступ к этой переменной, указав ее динамически. т.е. .:
define('xxx_yyy',123); $a='xxz'; $b='_yyy'; //How to I echo out "123" now? (without using echo xxx_yyy); //Something like these (don't work): echo $a$b; echo {$a$b};
Единственное, о чем я могу думать, это:
$defined=get_defined_vars(); echo $defined[$a$b];
но это кажется неуклюжим
echo constant ( $a . $b );
это то, что я думаю, что вы ищете, поскольку оно является постоянным.
Вы можете использовать константу (). http://us3.php.net/manual/en/function.constant.php
Это не переменная, она постоянна :
echo constant ( $a . $b );
Правильная функция для этого – get_defined_constants (), а не get_defined_vars () .
Чтобы сделать эхо-код 123, используйте следующее:
echo $a . $b;
Кроме того, define () делает константы не переменными.