|
|
|
| Собственно, хотелось бы обращаться к константе следующим образом:
Т.е. так чтобы можно было свободно задавать имя класса и имя константы.
Естественно, PHP так не разрешает. Функции call_user_const() тоже нет.
Пока извратился через выполнение кода в строке:
eval("\$var = $class::$constName;");
|
В данном примере значение константы, определенной именем класса и именем константы, переносим во временную переменную.
Может кто знает более элегантные методы? | |
|
|
|
|
|
|
|
для: ДацкыйКот
(19.03.2009 в 17:00)
| | Собственно, для констант такой синтаксис и не заявлен - только для функций.
посмотрите тут в комментариях предложено несколько решений
http://ru.php.net/manual/ru/language.oop5.constants.php | |
|
|
|
|
|
|
|
для: Loki
(19.03.2009 в 19:33)
| | Спасибо, посмотрел.. Пока наверно самое очевидное и простое - вот такое решение:
constant("$class::$constName")
|
http://ru.php.net/manual/ru/function.constant.php - вариант рассмотрен в примере 1 | |
|
|
|
|
|
|
|
для: ДацкыйКот
(19.03.2009 в 17:00)
| | точно не помню по поводу констант, но по моему знак $ перед именем константы присутствовать не должен | |
|
|
|
|
|
|
|
для: dobrynin
(19.03.2009 в 19:57)
| | тут случай когда значение переменной является именем константы | |
|
|
|