Чтобы сразу несколько полей задать/получить, можно написать методы с фильтрацией, лишние данные где-то хранить совершенно незачем. И от set('filedName') нужно избавляться в сторону setFieldName() и при возможности использовать их. В zf для заполнения объектов есть удобная вещь -
zf2.com.ua/doc/65 можно использовать этот подход