Как правильно подставить имена свойств объекта, если они сохранены в свойствах класса?
Привет.
Есть массив объектов
Array
(
[0] => stdClass Object
(
[param] => vote_date
[value] => 2014-09-30
)
[1] => stdClass Object
(
[param] => test
[value] => no no no
)
)
Обходим его
foreach($array as $item) {
echo $item->param.' => '.$item->value.'<br>';
}
А теперь давайте представим, что дело происходит внутри класса, и имена свойств объектов массива установлены в свойствах класса
public $settings;
public $field_name = 'param';
public $field_value = 'value';
function __construct($array){
$this->settings = new stdClass();
Обходим массив
//этот код вызывает ошибку
foreach($array as $item) {
$this->settings->$this->field_name = $this->field_value;
}
}
Вопрос: как правильно подставить имена свойств объекта, если они сохранены в свойствах класса?
Источник: Stack Overflow на русском