Pull to refresh
  • by relevance
  • by date
  • by rating

Zend Framework — HTTP-авторизация

Lumber room
Сейчас я покажу как можно организовать http-авторизацию в ZF. Т.к. на офсайте в мане ниче путного по этому поводу не сказано, то я пожалуй покажу людям как не переворачивая исходники Zend'а ее реализовать.
Читать дальше →
Total votes 11: ↑6 and ↓5+1
Views479
Comments 11

PHP класс для сборки инклюдов в один файл

Lumber room
по мотивам коммента mocksoul из темы PHP: Введение в Zend Framework

Проблема


В кратце, речь шла о том, что одним из недостатков фреймворка является его концепция «один класс – один файл». И хотя, с моей точки зрения, это не является недостатком архитектуры ZF, это является недостатком PHP. Проблемы начинаются когда PHP начинает инклюдить десятки и сотни файлов, да еще проверять их на once.

Предложенное решение – сборка всех инклюдов в один файл.
Читать дальше →
Total votes 7: ↑6 and ↓1+5
Views431
Comments 16

Обновление Zend Framework

Lumber room
Разработчики PHP в последний день осени порадовали нас очередным обновлением Zend Framework до версии 1.03.

Но что же нового? — К сожалению, ничего :(

Было исправлено 74 бага, под раздачу попали 16 пакетов. Но как по мне — слишком медленно продвигается работа — если заглянуть в JIR'у проекта — то можно увидеть еще 380 issues'а. Многовато…

Но не может, не радовать количество пакетов которые предлагают внедрить сторонние разработчики, все детали Вы сможете найти в Wiki
Total votes 7: ↑6 and ↓1+5
Views158
Comments 4

Zend Framework 1.5.0 Preview

Zend Framework
Выпущен почти релиз Zend Framework 1.5.0.

— Новый компонент Zend_Form с поддержкой AJAX для элементов.
— Новые хелперы для запросов AJAX и альтернативных форматов отдачи данных.
— Хелперы для Infocard, OpenID и LDAP.
— Поддержка сложных типов поиска в Lucene (fuzzy, date-range и wildcard).
— Поддержка индексного файлового формата Lucene 2.1.
— Хелперы Partial, Placeholder, Action и Header для View.
— Zend_Layout.
— Поддержка UTF-8 для PDF.
— Новые веб-сервисы (Technorati, SlideShare и Remember the Milk).

download
Total votes 2: ↑2 and ↓0+2
Views650
Comments 3

Zend Framework 1.5.0 уже не beta

PHP
Зашел только что посмотреть ссылочку на Zend Framework 1.5.0PR, а вместо этого увидел следующее:



Сегодня Zend Framework перерос из стадии beta в релиз.

Пробуем? ;)

P.S.: Подробнее здесь. А вот release notes я пока не нашел, соответственно, где почитать что поменялось — пока не знаю…
Total votes 19: ↑17 and ↓2+15
Views816
Comments 15

Использование Zend_Db_Table

Zend Framework
На работе пришлось столкнуться с очень не нравившейся мне ORM'кой собственного производства. Стал делать свою (ну не дурак ли, а? :)), наваял за 3 дня простенькую ORM, отображающую структуру таблиц на обьекты, не контроллируя типов. Итог получился примерно такой:
  • класс базы данных (относледовался от mysqli, pdo использовать было нельзя)
  • класс таблицы, хранящий в себе бд, и отвечающий за CRUD записей
  • класс записи, перенаправляющий методы CUD классу таблицы


Читать дальше →
Total votes 1: ↑1 and ↓0+1
Views2.3K
Comments 47

И ещё один способ генерации PDF

Website development
Навеяно топиком о генрации PDF с помощью ghostscript и Inkscape.

Посмотрев на предложенный вариант, я вспомнил одно очень интересное решение, коим и хочу поделиться.

Итак, генерация PDF с помощью QT

Читать дальше →
Total votes 10: ↑7 and ↓3+4
Views8.3K
Comments 14

Мой первый проект на Zend Framework

Lumber room
В процессе изучения Zend Framework, Php, Javascript, Xslt появилась идея закрепить все на практике, написав учебный проект. Все началось со змейки, которая бегала по полю кушала «яблоки» и разбивалась об себя или об границы экрана. Ну, в общем, стандартная игрушка под старые nokia. Только не двухцветная, а трёх=)
Появились сначала уровни, потом обработка на стороне сервера с помощью Zend. Позже уже появился дизайн, взятый с www.freecsstemplates.org (так, как с дизайном у меня туго=) ). И так все постепенно переросло в теперешний проект — с редактором карт, регистрацией, квестом и т.д.

Для начала появилась потребность в шаблоне, что реализовал с помощью Xslt. После этого добавил права пользователей с помощью Zend_Acl и авторизацию с помощью Zend_Auth. Ввел регистрацию, для того, что бы добавлять новых пользователей. В этом случае мне понадобились Zend_Mail и Zend_Validate.
Реализовал контроллеры отдельные для квеста, случайной карты и определенной. Движки — на чистом Javascript. Для квеста — один движок. Для случайной и определенной карты — тот же самый плюс сохранение движения с помощью XmlHttpRequest.
Редактор так же на чистом Javascript. Сохранение происходит с помощью XmlHttpRequest. Проверка карты на корректность — на стороне сервера(проверяется можно ли с любой точки попасть в любую и существует ли точка, с которой нельзя выбраться).
В качестве базы данных использовал SQLite, так как не было потребности в каких-то других. Настраивается легко и быстро на персональном компьютере. Но в случае больших нагрузок можно легко изменить на любую другую без проблем, так как использую PDO.

В принципе, о проекте — все. Выкладываю не для того что бы показать, что я крут, а что бы посмотрели, высказали свои мнение и пожелания, желательно указали баги, которые я исправлю. Хочу получить опыт в «поддержке» проекта.

P.s. Проект — Open Source. Кому интересны исходники — обращайтесь. code.google.com/p/zendsnake/downloads/list

Сам проэкт — www.snake4ever.org.ua

UPD. Проект окончен. Но исходники можно до сих пор скачать.
Total votes 1: ↑1 and ↓0+1
Views329
Comments 33

Полнотекстовый поиск в веб-проектах: Sphinx, Apache Lucene, Xapian

Website development
Полная авторская верcия из моего блога. Оригинал материала написан специально для Developers.org.ua

Наверное любой современный веб-проект сложно себе представить без… без контента! Да, именно контент в разных его проявлениях сегодня «правит бал» в различных веб-проектах. Не так важно — создаваемый пользователями или получаемый из других источников автоматически — информация является основной любого (ну, или почти любого) проекта. А раз так — то вопрос поиска необходимой информации стоит очень остро. И острее с каждым днем, ввиду стремительного расширения количества этого самого контента, в основном за счёт создаваемого пользователями (это и форумы, и блоги и модные нынче сообщества, вроде Habrahabr.ru). Таким образом, любой разработчик, реализующий сегодня какой-либо проект, сталкивается с потребностью реализовать поиск в своём веб-приложении. При этом требования к такому поиску уже намного сложнее и шире, чем даже год-два назад. Конечно, для каких-то проектов вполне подойдёт и простое решение, к примеру, вполне можно использовать Custom Google Search. Но чем более сложное приложение, и чем сложнее структура контента, если требуются особые виды поиска и обработки результата, или же просто количество или формат данных в вашем проекте особый, вам потребуется собственная поисковая система. Именно своя система, собственный поисковый сервер или сервис, а не сторонний, пусть даже гибкий и настраиваемый. Но что же выбрать, и вообще — какие сейчас на рынке есть поисковые проекты, которые готовы для использования в реальных проектах, не исследовательских или научных, а реальных бизнес-приложениях? Далее мы кратко рассмотрим различные варианты поисковых решений, пригодных для встраивания в ваше веб-приложение или развёртывания на собственном сервере.
Читать дальше →
Total votes 3: ↑3 and ↓0+3
Views51K
Comments 62

Введение в Zend Framework

PHP
Translation
Update (2014): Это статья 2007 года, которая, к моему удивлению, до сих пор пользуется спросом. По этой причине я обновил её в соответствии с новыми правилами оформления постов на Хабре, и добавил подсветку синтаксиса для примеров кода. Если кому-то захочется что-то добавить или исправить, исходник текста с хабра-разметкой выложен в открытый доступ: gist.github.com/dreikanter/2b4ee996d7a775e707d7

Аннотация от переводчика


PHP — один из самых широко распространенных языков разработки веб-приложений и при этом один из самых спорных. Я очень часто видел негативное отношение к этой технологии, да и недостатки, провоцирующие это отношение — не для кого не являются секретом. Тем не менее, PHP активно эволюционирует и во многих отношениях постепенно становитс лучше. Одним из серьезных шагов его развития, на мой взгляд, является появление MVC-фреймворков, призванных систематизировать процесс разработки веб-приложений и приучить к порядку разработчиков, которым зачастую здорово не хватает силы воли, чтобы при всей предоставляемой языком свободе, сохранить грамотную и красивую инфраструктуру разрабатываемого ПО (сразу уточню, что последнее утверждение субъективно и основано исключительно на виденном мной коде различных программных решений).

В последнее время я активно заинтересовался архитектурой MVC и сделал свою собственную реализацию фреймворка на этой концепции для PHP4. Совсем недавно на глаза попался первый официальный релиз Zend Framework, о котором я давно слышал, но все руки не доходили с ним поиграть. Для PHP существуют и другие подобный библиотеки, но в данном случае привлек бренд.
Читать дальше →
Total votes 52: ↑51 and ↓1+50
Views97K
Comments 158

Введение в Zend Framework (продолжение)

PHP
Translation
Продолжаем рассказ о Zend Framework. В первой части статьи была описана концепция программной архитектуры MVC, рассмотрена структура типового веб-приложения, базирующегося на Zend Framework и выполнена демонстрационная реализация контроллера и вида на его основе. Во второй части будет раскрыта тема модели и приведен пример взаимодействия приложения с базой данных.
Читать дальше →
Total votes 35: ↑27 and ↓8+19
Views16K
Comments 29

Введение в Zend_Auth

PHP
Translation
В статье приведен обзор возможностей компоненты Zend_Auth, дающий общее представление о реализации пользовательской авторизации в приложениях на базе Zend Framework. В качестве основы приводимых примеров, использованы материалы статьи «Введение в Zend Framework». Примеры протестированы на Zend Framework версий 0.9, 0.9.1 и 0.9.2, и скорее всего будут работать с более поздними версиями, но не с более ранними.
Читать дальше →
Total votes 20: ↑17 and ↓3+14
Views6.4K
Comments 34

Интеграция Zend_Acl и MVC. Часть 1 (простейшее использование)

Zend Framework
Translation
Итак, что не так с Zend_Acl и текущей реализацией MVC в Zend Framework? Ничего неправильного нет, просто не слишком очевидно для разработчиков, как достичь оптимальной интеграции между этими двумя важными частями фреймворка.
Читать дальше →
Total votes 12: ↑9 and ↓3+6
Views1.1K
Comments 17

Интеграция Zend_Acl и MVC. Часть 2 (продвинутый вариант использования)

Zend Framework
Translation
На DevZone появилась вторая часть статьи о интреграции Zend_Acl в MVC Альдемара Бернала и я спешу предложить вам ее перевод.

В первой части мы говорили о том, как настроить экземпляр Zend_Acl и включить его в окружение MVC (с использованием плагина фронт-контроллера). Но как же настройки других действий для блокирования доступа, или как сделать редактирование статьи только её автором? Это и кое-что еще будет рассмотрено далее.

Читать дальше →
Total votes 1: ↑1 and ↓0+1
Views1.2K
Comments 5

Разработка CMS

Lumber room
Идея, родившаяся в процессе разработки собственной CMS. Часто нужно, чтобы одни и те же события были доступны одновременно через основной html вид, через ajax, или, к примеру, через мобильный телефон. Естественно, может понадобиться не только вывести данные в разных форматах(html, JSON, xml), но и выполнить дополнительные действия в зависимости от среды.

Можно реализовать это с помощью условий в отдельном методе контроллера, можно с помощью отдельных методов для каждого типа отображения, а можно так…
Читать дальше →
Total votes 15: ↑13.5 and ↓1.5+12
Views297
Comments 18

ZF 1.6 RC2

Zend Framework
Сегодня вышел второй кандидат версии 1.6. На настоящий момент анонса еще небыло, но загрузить его уже можно.

Что же нового появилось? Пока могу лишь предполагать на основе сравнения кода первого и второго кандидатов:
  • Добавили класс для работы с капчей и соответствующее поле для формы
  • Добавили поддержку FirePHP (расширения FireBug) для Zend_Log и Zend_Db_Profiler
  • Добавили новые хелперы для Dojo
  • Добавили класс загрузки файлов и поле для Zend_Form + валидаторы
  • … и масса изменений в остальных классах...
Пробуем и ждем релиз?
Total votes 10: ↑7 and ↓3+4
Views448
Comments 4

Хватит изобретать велосипеды!

PHP
Здравствуйте, уважаемые хабрадевелоперы.

С вашего позволения я немного пофилософствую на тему развития нас, как сообщества девелоперов, использующих замечательный язык PHP. Заранее скажу, что многие могут не поддержать мою точку зрения и я буду рад обсудить это в комментариях. Итак, приступим…

Немного истории


Так исторически сложилось, что PHP считается простым языком.
Изначально он создавался для быстрого написания небольших динамических веб-приложений низкоквалифицированным (читай — неопытным и начинающим) веб-разработчиком.
Аббревиатура PHP в далеком 1994 году означала «Personal HomePage».

С тех пор прошло 14 лет, движок PHP переписывался с нуля два раза (если мне не изменяет память), обрастая «взрослой» функциональностью и разбивая стереотипы своей ограниченности проектами уровня Фейсбука и Википедии.
Стоит подождать ещё самую малость и выйдет PHP 5.3 с долгожданными неймспейсами, незаслуженно игнорируемым Late Static Binding и некоторыми добавками синтаксического сахара.
Читать дальше →
Total votes 117: ↑104.5 and ↓12.5+92
Views2K
Comments 97