2

ここで、定数は関数内で動的に定義されており、クラス名でアクセスできるようにするために、クラス名でアクセスできません。関数内の私の定数は Db から来ており、私は db から定数を生成しています。それらにクラス名でアクセスしたいのですが、定数を利用可能にするか、クラスも同様にするために「定義」で何をすればよいか教えてください。

    クラス MyClass {
        パブリック関数 getsettings(){
            define('myconstant','values');
        }
    }
    echo MyClass::myconstant;
    

4

2 に答える 2

5

関数define()は、呼び出した場所に関係なく、グローバル スコープの定数を定義します。クラスやコンテキストとは関係ありません。クラス定数を定義するには、次のconstキーワードを使用する必要があります。

class MyClass 
{
    const myconstant = 'values';
    //..
}
于 2013-10-22T09:55:41.960 に答える