Здравствуйте. В предыдущей части я Вам рассказывал о работе с базами данных с помощью Zend Framework.
А в этой части статьи я расскажу Вам о том, как можно удобно сделать вывод необходимых нам данных в нужном виде на экран. Для этого предназначен класс Zend_View, с помощью которого можно легко реализовать «вид» из паттерна MVC (model-view-controller или модель-вид-контроллер).
Будьте внимательны и наберитесь терпения: нам предстоит закончить наше приложение и начать развивать его!
Работая над Zend_View
Zend_View — это класс PHP фреймворка Zend Framework, призванный отделить программную часть разработки сайта от его дизайна. Тоесть сначала пишется программная часть, а потом оформляются скрипты вида, где мы будем использовать минимум программного кода.
Работа с Zend_View заключается в создании переменных внутри экземпляра класса Zend_View и использование этих переменных в скриптах вида. По-умолчанию, Zend_View включён и он обрабатывает скрипты вида из папки «/application/views/scripts/{controller}/{action}.phtml». Каждый скрипт вида это обычный html документ с вставками php кода.
Давайте модифицируем наше приложение для работы с Zend_View и напишем вывод всех новостей сайта, а странички для создания и редактирования новостей сайта Вы потом создадите сами (для лучшего освоения материалла).
Итак, создайте файл «index.phtml» в папке «/application/views/scripts/news/» и напишите в нём такой код:
В выше приведённом коде объект $this это и есть наш объект Zend_View, в
котором мы создали несколько переменных из контроллера. В коде я
использовал сокращенные конструкции PHP, для удобства работы. Например,
проще записать
нежели:
Примечание: короткие конструкции работают только если в настройках сервера включена директива short_open_tags. Но на данный момент short_open_tags=off — редкость.
Видите как просто оформить подобный проект, для того, чтобы изучить весь функционал Zend_View читайте официальный мануал (мне просто лень описывать всё подряд, когда в мануале доходчиво расписано). Zend_View позволяет разбивать Ваши странички на небольшие кусочки, например, шапку можно написать один раз для всех страниц сайта, а потом подключать её в разных скриптах вида. Такой подход даёт много преимуществ:
- при изменении шапки не прийдётся редактировать все скрипты;
- предотвращается дублирование часто использоваемого кода;
- ничего лишнего не путается в Ваших скриптах. Вы работаете только над оформлением тела документа!
Не забудьте написать следующий код в нашем контроллере, иначе наш проект работать не будет:
С предыдущей статьи изменений почти нет. Были добавлены только строчки, где я работаю с Zend_View. Они очень тривиальны и понять их работу опираясь на уже изложенный материал очень просто. В качестве «домашнего задания» рекомендую
Вам создать скрипты вида для добавления и редактирования новостей. Для удаления новости скрипт вида не нужен, поскольку в конце мы перенаправляем браузер на другой адрес (если хотите можете что-то и вывести пользователю, убрав редирект :) ). Если Вам что-то непонятно, то пишите в комментарии - с удовольствием объясню :)
Happy End
Поздравляю Вас. Вы прошли моё хилинькое :) введение в Zend Framework. Это введение меня сильно утомило, потому, что очень хочется писать о более интересных вещах. И в дальнейшем я именно этим и займусь, я покажу Вам ещё много других вкусностей этого фреймворка. А со временем Вы и сами поймёте: Zend Framework - очень мощный и ефективный инструмент в руках проффесионала!
Удачи Вам в Ваших начинаниях!!!



.