Какой рейтинг вас больше интересует?
|
Главная /
Каталог блоговCтраница блогера Markup/Записи в блоге |
Markup
Голосов: 5 Адрес блога: http://lusever.livejournal.com/ Добавлен: 2007-12-23 12:13:17 блограйдером lusever |
|
CodeIgniter + Zend Framework + Doctrine
2009-01-09 05:33:48 (читать в оригинале)Последний раз вплотную на php я что-то делал два года назад. За это время технологии прилично продвинулись вперед. Тогда вообщем-то было все тоже самое, но валилось из-за сырости, требовало постоянное ковырения в php.ini, конфиге апача и phpMyAdmin. А самое плохое – были завязаны сами на себе.
Сейчас же можно смотреть вебдванольненькие документации, с хорошим поиском и хоть каким-то количеством готовых решений.
А еще, не нужно лезть в phpMyAdmin, с помощью Doctrine можно запросто написать всю структуру в YAML файлах. А она сама запишет в БД со всеми зависимостями и индексами, да еще модели сгенерирует в специальную папочку.
CodeIgniter задаст легкую структуру приложения, не нужно выдумывать расположение файлов, шаблонные движки, писать тыщуодну MVC. А модели будут из Доктрины, он не против.
А если нужна авторизация, OpenId и еще что-нибуть такое стандартное, но хочется отлаженное и без копания в чужом коде – берем Zend Framework с его коллекцией классов. Он вообще изначально проектировался так, чтобы все компоненты не зависели друг от друга, а интегрировались.
На самом деле, самым без проблемным оказался CodeIgniter. Убрал везде index.html, перенес все в директорию cgi-bin и наслаждаюсь.
Потом добавил Doctrine. И час искал тот метод, который генерит таблички без использования консоли.
Doctrine::createTablesFromModels(APPPATH . 'models');
И тут как раз оказалось, что ей нужен PDO. Он был установлен у хостера. Установлен сам по себе, без драйверов :) Пришлось лезть в консоль. Собрал. Т.е. собрал все модули которые нужны. Переписал php.ini. Заработало. Очень понравилось. Единственное, в типах столбцов всегда нужно указывать что они NOT NULL.
---
Articles:
columns:
id:
primary: true
autoincrement: true
type: integer(4)
notnull: true
url: { type: string(255), notnull: true }
text: { type: string, notnull: true }
А вот Zend'а, моя сборочка встретила холодно.
Zend_Loader::registerAutoload('Zend_Loader');
Тут php бросался варнингами. Оказалось где-то в самом конце CodeIgniter проверял if (class_exists('CI_DB') AND isset($CI->db))
, что вызывало у зенда стойкое желание подгрузить класс CI_DB. В сообществе об этом знают, но не используют. Убрал автолоад и стал подгружать вручную, на четыре строчки оказалось больше.
И нужно мне подсоединить OpenId. Там проблемы возникли у всех. CodeIgniter ругался на роутинг (у него инеграция с PHP4, но специфичная форма роутинга, которую удалось запустить только созданием хука), Zend отказывается принимать жж. А Доктрину не понятно как сюда вообще вписывать.
Вывод: эти технологии рассчитаны на будущее. Когда у каждого будет свой выделенный сервер с PHP7. И YAML будут проходить в школе.
Завтра 18:00, ну я надеюсь...
2008-12-14 23:49:15 (читать в оригинале)http://www.clienttech.ru/
Я тут мониторчик взял
2008-12-10 13:22:43 (читать в оригинале)Из-за неправильной цветопередачи, мой старый монитор отдается родственникам в поволжье, и на сцену выходит тридцати дюймовый красавчик:
ClientSide'2008 по другому никак
2008-10-29 22:32:26 (читать в оригинале)12seconds.tv – сервис видео микроблогинга:
ClientSide 2008
Вот вечно они приглашают кого-нибудь, но ведь кого надо либо подает сам заявки, либо овсянкой не заманишь.
Сейчас, соберутся клиентские разработчики (сразу представляем четыре браузера), а у нас экспертный совет состоящий из дизайнера и юзабилиста (фотошоп + бумажка). Это у них на сайте, большими буквами так и написано.
Sizzle в клочья
2008-10-09 14:48:44 (читать в оригинале)Вечером во время общения по аське, JSman обнаружил, что sizzle кэширует результаты запросов. А сам движок не шибко чем отличается от текущей реализации в jQuery.
Так как тестирование css селекторов происходит в 5 итераций с последующим вычислением среднего, то у этого движка была значительная фора относительно не таких хитрых движков. Результаты и правда, не особо отличаются:
Еще добавил после выборки цикл, чтобы уравновесить по скорости массивы и коллекции.
+143 |
146 |
IllAIR |
+123 |
143 |
GetProfit |
+116 |
124 |
antonesku |
+111 |
126 |
Melipomena |
+108 |
125 |
Agnoia |
-2 |
48 |
В трусиках |
-2 |
22 |
СюНя_СоЛныШкА |
-3 |
14 |
Sebastian_Valmont |
-3 |
17 |
xpyctal |
-3 |
24 |
I have been here before |
Загрузка...
взяты из открытых общедоступных источников и являются собственностью их авторов.