次のような構造のクラスがあります。
class Test {
private $var1;
private $var2;
private $var3;
public function __construct($params) {
foreach($params as $key => $value) {
$this->$key = $value;
}
}
}
新しいオブジェクトをインスタンス化するときに、適切と思われるパラメータをいくつでも渡すことができるという考え方です。たとえば、次のことができます。
$params['var2'] = "Variable 2 Instantiated";
$params['var3'] = "Test";
$test = new Test($params);
これは、$test->var2と$test->var3のみをインスタンス化します。
これまで割り当てのリストを作成してきましたが、使用可能なメンバーの半分だけでオブジェクトをインスタンス化する場合は、値が設定されているかどうかなどを確認する必要があります。
したがって、実際の質問は次のとおりです。
動的クラスメンバーに値を割り当てるための正しい構文は何ですか?
$this->$var = $var2
私の例のように、は機能していません。運が悪かったのでグーグルを試してみました。