Исследуем класс Zend_Controller из Zend Framework

Posted by Dmytro Shteflyuk on under PHP · English (34,475 views)

Команда разработчиков Zend Framework с воодушевлением работает над Zend Framework, фреймворком для построения мощных веб-приложений на PHP. Но очень многих смущает его кажущаяся сложность. В этой заметке я попытаюсь объяснить архитектуру наиболее важной части (по моему мнению) фреймворка – Zend_Controller.

Read the rest of entry »

Правильная обработка заголовка Last-Modified

Posted by Dmytro Shteflyuk on under PHP · English (31,850 views)

Это короткая заметка о заголовке Last-Modified. Представьте следующую ситуацию: у Вас есть изображение, которое хранится в базе данных, и Вам нужно отправить это изображение браузеру в ответ на некоторый запрос. Но извлечение изображения из базы данных занимает некоторое время, а если этих изображений несколько – производительность Вашего Веб-сервера начинает стремительно падать. В этом случае Вам необходимо реализовать некоторую функциональность для кэширования в приложении. Все изображения могут изменяться, потому необходимо иметь возможность проверять дату изменения (например, хранить ее в той же базе данных).

Read the rest of entry »

Zend Framework: размышления о Zend_Config

Posted by Dmytro Shteflyuk on under PHP · English (33,338 views)

В почтовой рассылке Zend Framework кипит обсуждение класса Zend_Config. У меня есть свои идеи об этом классе, и я попытаюсь изложить их здесь. Мне необходимо нечто, что сможет загружать и сохранять конфигурацию в разные хранилища (например, XML, базы данных или текстовые файлы INI), важно иметь возможность изменять параметры хранилища (например, имя файла, таблицы или даже структуру базы данных), было бы замечательно, если бы я мог расширять систему хранения своими собственными стратегиями.

Read the rest of entry »

Zend Framework: Использование Smarty как шаблонного движка

Posted by Dmytro Shteflyuk on under PHP · English (151,180 views)

Класс View, который входит в Zend Framework, имеет очень плохие способности к расширению. Он содержит шаблонные переменные, но не дает доступа к ним, он включает массив различных путей (к шаблонам, фильтрам), но не позволяет добавлять другие типы или использовать их. Таким образом, единственным вариантом использования Smarty с Zend Framework является отказ от Zend_View и управление объектом Smarty напрямую.

Read the rest of entry »