Учитывая, что представление отвечает за генерацию выходных данных, то, что вы здесь делаете, кажется нормальным: вы не делаете никаких «вычислений / бизнес-вещей / чего-то подобного» в своем представлении.
Единственная проблема, которую я имею, это то, что вы пишете здесь много кода; Я бы предпочел передать массив / объект $blog
в View в целом и позволить View справиться с ним - вместо того, чтобы присваивать каждому свойству $blog
View.
то есть что-то вроде этого кажется (просто идея - до вас, чтобы увидеть, как это может соответствовать вашему классу View) более красиво:
foreach($this->blogs as $blog) {
$tpl = new Output_Html();
$tpl->blog = $blog;
$tpl->render();
}
Это означает, что, если ваш blog
объект когда-либо изменяется, у вас есть только один вид для редактирования (для добавления или удаления материала) , и вам не нужно изменять каждый вызов этого представления. добавить / удалить один компонент / свойство $blog
.