0

我需要在静态变量中使用 PHP 常量,但我今天发现这是不可能的:在 Class 文件中是否有全局 PHP CONSTANT?

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。

最好的方法是什么?

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

4

1 回答 1

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

}

希望这可以帮到你。

于 2013-06-25T11:25:18.707 回答