php で定数と同様に変数をプライベートにすることは可能ですか?
この変数がクラス外にアクセスできないように変数をプライベートにしたい、またクラス外のクラス名で定数変数にアクセスしたくないので変数を定数にしたい
誰か答えを教えてください。ありがとう。
まず、PHP変数は常に、private
public
またはprotected
それぞれのキーワードとともに設定できます。
次に、PHP クラス定数 をpublic 以外のスコープに設定することはできません。したがって、これらの構文は両方とも有効ではありません: public const A
private const A
. クラス内でのみ使用できconst A
ます。
定数をprivate にしたい場合は、静的メンバーを次のように宣言する必要があります。
class A
{
private static $a;
}
このクラス メンバーは、 を介して定数のように呼び出すことがA::$a
できますが、その値を変更することもできます。
定数が になることはありませんprivate
。彼らはすることができますpublic
その場合、プライベート静的プロパティを使用して、すべてのオブジェクトで同じ変数を使用します。そのスコープをネストされたものに拡張する場合は、getter メソッドを公開してその値を取得し、変数設定を制限できます。