Непонятно из вопроса, использовали ли вы этот подход, если да, я удалю этот ответ.
Посмотрите на __ unset , простой пример:
class Foo
{
public function __unset($property)
{
unset($this->__my_property_holder[$property]);
}
}
Вам просто нужно сделать unset($row->attributes()->property1)
, и это фактически вызовет Foo->__unset('property1')
.