静态变量中的PHP常量

时间:2013-06-25 10:19:13

标签: php variables static constants

我需要在静态变量中使用PHP常量,但我今天发现它不可能:Is a global PHP CONSTANT available inside of a Class file?

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。

最好的方法是什么?

编辑:添加demo = http://codepad.org/aqzj2TJh

1 个答案:

答案 0 :(得分:1)

你可以用其他方式做同样的事情。

define("TABLE_PREFIX", "TEST_");
define("TEST_TABLE_QUERY", "select * from ".TABLE_PREFIX."USER");
class Test {

    private static $sql_query = TEST_TABLE_QUERY;

    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;
   }

}

希望这可以帮到你。