нужно использовать PHP константу в статической переменной, но я обнаружил, что сегодня это не представляется возможным: Is a global PHP CONSTANT available inside of a Class file?PHP константы в статической переменной
define("TABLE_PREFIX", "TEST_");
class Test {
private static $sql_query = "select * from ".TABLE_PREFIX."USER";
public static function show_query1() {
echo "My first test";
echo self::$sql_query;
}
public static function show_query2() {
echo "My second test";
echo self::$sql_query;
}
}
Test::show_query1();
Test::show_query2();
Я не хочу, чтобы передать константу в качестве аргумента статический и я не хочу объявлять $ sql_query в каждой статической функции.
Каков наилучший способ для этого?
EDIT: добавить демо = http://codepad.org/aqzj2TJh
Вы можете использовать константу просто отлично. То, что вы не можете сделать, это использовать выражение, подобное '' concatenated '. "Strings". – Jon
Вы нашли правильный ответ уже, вы просто не поняли его. – deceze
@YogeshSuthar: классический приемник и сеттер работает только в контексте объекта. Я не хочу определять статический сеттер и называть его каждый раз ... (если есть другое решение) – Matth