PHPで変数が上書きされるのを防ぐことは可能ですか?私はいくつかの予約変数を持つシステムを作成していますが、特定の時点以降にそれらを他のものに置き換えたくありません。可能です?そうでない場合、これに近いものにアプローチするにはどうすればよいですか?
これらの変数のいくつかはインスタンス化されたクラスであるため、定数として定義することはできません。
この場合にできる最善のこと(私が知っていること)は、それらをクラス内のプライベート変数にすることです。次に、ゲッターとセッターを使用して値または構成を割り当てる必要があります。そうすれば、他の誰かのコードがあなたのコードと衝突する可能性が低くなります。
利用可能なコードがまったくないため、状況で最も簡単な方法を見つけることは不可能ですが、より良いオプションの1つはおそらく次のとおりです。
必要に応じて、静的にします
たぶん、凍結状態のようなものを実装することができ、クラスが凍結されている場合、変更することはできません:
class Test
{
private $variable;
private $frozen = false;
public function freeze() {
$this->frozen = true;
}
public function setVariable($value) {
if ($this->frozen)
throw new Exception("...");
$this->variable = $value;
}
}