私ができるように、このような機能はありますか:
populate_array($array, 'key', $value)
代わりに:
$array['key'] = $value;
?
魔法のゲッターとセッターを使用し、配列属性を設定したい場合に発生する「オーバーロードされたプロパティの間接的な変更」エラーを回避したいので、私はこれを求めています:
class MyClass
{
private $string;
private $array;
public function __set($attribute, $value)
{
$this->$attribute = $value;
}
public function __get($attribute)
{
if (isset($attribute))
{
return $this->$attribute;
}
}
}
$obg = new MyClass();
$obg->string = 'Hey it works!';
$obg->array = ['This works', 'too!'];
$obg->array['key'] = 'This will throw `Indirect modification of overloaded property MyClass::$array has no effect`';