添加到动态变量变量数组

时间:2015-12-11 08:16:22

标签: php arrays oop

在我班上,我有一个公共变量:

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。为什么不呢?

修改 感谢roullie的正确答案。结果我忘了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;   
    }
}

1 个答案:

答案 0 :(得分:1)

将合并数组的值设置为$users = array( array('email' => 'receiver@bad-domain.org', 'first' => 'Receiver', 'last' => 'Name'), array('email' => 'other@domain.org', 'first' => 'A', 'last' => 'name'), array('email' => 'other-receiver@bad-domain.org', 'first' => 'Other', 'last' => 'Name') ); // loop through users and set the individually to catch exceptions foreach($users as $user) { try { $message->setTo(array($user['email'] => $user['first'].' '.$user['last'])); } catch(Swift_RfcComplianceException $e) { echo "The email ".$user['email']." seems invalid"; } }

$full_rows
相关问题