В моем классе, у меня есть открытая переменный:Добавления к динамическому переменному переменному массиву
public $full_rows = array("text");
Я хочу, чтобы иметь возможность добавить к этому массиву, например, так:
$form->addarray("full_rows", array("url","name"));
Таким образом, у меня есть эта функция:
public function addarray($arrayname, $array = array()) {
array_merge($this->$arrayname, $array);
}
За исключением того, что это не влияет на массив full_rows
. Почему нет?
Редактировать Благодаря рули для правильного ответа. Оказывается, я забыл, что array_merge
возвращает объединенный массив, а не просто делает это. Я думал, что это проблема с переменными переменными (как я никогда раньше их не использовал).
Вот моя последняя функция:
public function addarray($arrayname, $array = array()) {
if((isset($this->$arrayname)) && (is_array($array))) {
$this->{$arrayname} = array_merge($this->{$arrayname}, $array);
} else {
return false;
}
}
'$ форма-> addarray ($ form-> full_rows, массив (" URL "," name ")); – RamRaider