Kohana: Контроллер для CLI

Kohana - в первую очередь фреймворк, т.е. каркас приложений, и не обязательно для Web. Результатом работы Веб приложения может быть не только гипертекст(HTML) но и JSON, XML, изображения, простой текст, так и вовсе ничего.

Понятно, что в зависимости от размера проекта и назначения проекта иногда приходиться писать демоны, которые занимаются рассылкой почты, бэкапами бд, различными пересчётами, транскодингом и много чем ещё...

Всё-таки оказалось, что kohana сильно ориентирован на вэб, хотя казалось бы, компоненты должны быть отдельно друг от друга.

Для написания консольного приложения(впрочем как и "демона") на основе Kohana нужно немного "допилить" контроллер. По-прежнему всю логику будет выполнять именно он, за одним исключением - если приложение и будет что то выводить - то это сообщения для отладки.

Важным моментом в этом является отлавливание ошибок. Стандартный отлов ошибок и исключений будет работать по-прежнему, но при малейшем E_NOTICE у вас в консоль отобразиться как минимум строк сто HTML кода - страница ошибки. Рано или поздно надоест прокручивать вверх и разбираться в коде - почему бы не представить ошибку в более понятном и читаемом виде?

Read moreKohana: Контроллер для CLI

Удобный доступ к конфигу/массиву

Долго думал как назвать пост. Иногда очень достают километровые строки для доступа к массиву(как правило километры - именно в конфиге), например:

$this->config->config['siteconfig']['someavatar']['normal']['height']

А хочется что - то более лаконичное, вроде

$this->_siteConfig('someavatar', 'normal', 'height');

или может даже

$this->_siteConfig('someavatar/normal/height')

Read moreУдобный доступ к конфигу/массиву

CodeIgniter: добавляем фильтр. Часть 1

Прочитав небольшой обзор фреймворка yii навеяло желание сделать одной очень нужной для CodeIgniter вещи - фильтра. Подробнее о том что это. В кратце - метод который вызывается сразу после конструктора контроллера перед выполнением метода, который был выбран фреймворком на основании правил роутинга.

Область применения - самая разная: различные проверки прав, xss фильтрация, установка каких-либо полей класса, загрузка и инициализация моделей/библиотек/хелперов и прочего.

Read moreCodeIgniter: добавляем фильтр. Часть 1

Flex под linux – миф или реальность?

Озадачил меня вконтакт.ру разработкой приложения на флексе. Вот и заинтересовался, получиться написать что-то на флексе под линь, да и возможно ли вообще :)

Как оказалось, под линукс средств разработки очень мало. А то что есть - кривое, не удобное. И судя по всему, даже платных нет. Разве что Idea - про неё я честно не интересовался.

Итак, по порядку...

Read moreFlex под linux – миф или реальность?

Обновление прошивки DSL-500T

Стандартная ситуация: деревня(Большие Колпаны, Гатчинский район, Ленинградской области), еле-еле, около 2х лет назад, пустили adsl по нашим старым ржавым телефонным. И конечно это был Авангард-ADSL. Интернет от них никогда нормально не работал. Очередной попыткой поправить безобразие была обновление прошивки роутера.

Read moreОбновление прошивки DSL-500T

Установка madwimax в debian sid

Дебиан(sid, x86) поставил, а интернет туда не пробросил: нужны драйвера для wimax-модема sumsung SWC-U200 для yota. К моменту поста вышла новая версия драйверов madwimax-0.1 (надо сказать что драйвер madwimax-0.0.2 до сих пор отлично работает).

Устанавливать драйвер буду из под chroot'а системы основной openSuSE 10.3 x86, ибо тут интернет есть

Read moreУстановка madwimax в debian sid

Чуть-чуть маршрутной магии

Не так давно, я торопился, нужно было в город ехать. А всё что скачал с ноута переписать не успел - поздно вспомнил, да и больше 30Гб через вифи это не быстро.
Подключил бук через провод - заметно быстрее. Но инета нет! Ибо у меня в биллинге привязка по маку.

Read moreЧуть-чуть маршрутной магии