Архив

Архив Апрель 2009

ArrayAccess vs __set __get

30 апреля 2009 3 comments

В одном из постов нашего блога рассматривался класс registry, где механизм передачи данных между контейнером и внешней средой использовал магические методы __set и __get. Однако есть ещё один интересный механизм – встроенный интерфейс ArrayAccess. Интерфейс переопределяет квадратные скобки («[]«) у объекта, позволяя обращаться к нему как к массиву.
Здесь мы рассмотрим какой из этих методов быстрее.
Читать далее…

Categories: PHP Tags: , ,

Трассировка кода в PHP

27 апреля 2009 Нет комментариев

Были у меня необходимости выявлять где та или иная функция вызывается, в чужом коде. И не всегда на тестируемой машине был установлен xDebug. Собственно к делу коду. Функция выводит на экран последовательность инсрукций которые её вызвали Читать далее…

Categories: PHP Tags: ,

Глобальные переменные в функциях

26 апреля 2009 2 comments

Что-то зачастили вопросы типа «как объявить все глобальные переменные в функции или методе?». Помимо пробегания глобального массива $GLOBALS foreach-ем, стоит обратить внимание на такую чудесную PHP-функцию как extract. То есть всё решение сводится к следующему коду: Читать далее…

Categories: PHP Tags:

PHP Benchmark: быстрый код

23 апреля 2009 3 comments

Меня всегда интересует как надо писать код что бы он выполнялся быстро. Поэтому за некоторое время у меня накопилось несколько ссылок на ресурсы, которые приоткрывают секреты быстрого кода, коими решил я поделиться.
Читать далее…

Categories: PHP Tags: , ,

Ubuntu 9.04 (Jaunty Jackalope)

22 апреля 2009 3 comments

Сегодня вышла новая версия дистрибутива Ubuntu – 9.04 Jaunty Jackalope.
На сайте пока еще ссылки все ведут на Release Candidate. Но мы то знаем где искать! =)
Читать далее…

Categories: Linux Tags: , ,

Фильтры для Adblock

20 апреля 2009 1 комментарий

За что я люблю FireFox так это за его расширения, особенно мне нравиться блокировщик рекламы Adblock. Которое позволяет избавиться от навязчивой рекламы в Интернете, которая часто загружается дольше всего остального на странице, постоянно отвлекает своей анимацией и тупыми попапами.
Собственно о чем я? Задавался я идеей найти фильтры для Adblock, которые позволяли бы отлично блокировать рекламу и в итоге находил длиннющие списки блокировки по маске и меня это не воодушевило. Поэтому я решил составить свой сборник фильтров, костяк их – 4 регулярки которые и блокирую бОльшую половину рекламы, остальное, возможно тоже внесу в регулярки, хотя всё всё равно не опишешь РегВыром :) .
Сюда и буду выкладывать последние версии сборника фильтров.
Читать далее…

Потенциальный перенос

16 апреля 2009 Нет комментариев

Из-за длинных слов лопается вёрстка?
overflow:hidden конечно решение, но есть ещё одно решение, безвредное к тексту, в виде тега <wbr /> – тег потенциального переноса.
Читать далее…

Categories: html/css Tags:

iconv силами MySQL

14 апреля 2009 7 comments

По опыту скажу, что иногда есть необходимость конвертировать данные из одной кодировки в другу, но стандартный метод iconv недоступен (собственно и правильно – жрёт очень много, а используется мало). Тогда и может пригодится следующий скрипт, объявляющий функцию iconv. Конвертирование происходит через MySQL.
Читать далее…

Categories: MySQL, PHP Tags: ,

jQuery плагин – управление окнами

13 апреля 2009 10 comments

Выкладываю бета версию библиотеки для jquery.
Данный плагин управляет различными окнами от маленьких тултипов до окон во весь экран.
Большая просьба обо всех найденных ошибках пишите в комментах или говорите мне :)
Пример использования всех видов окон вы найдете в архиве с исходниками.
IE пока не поддерживается (хотя фиг его знает я не тестил, но скорее всего нет), пока не было времени подгонять под него, обещаю займусь в ближайшие выходные чесслово :)

Update
Поправил баги, теперь работает более стабильно, пикчер поправлю при следующем обновлении :)
Совместимость с ие пока отсутствует, но над этим работаю.
Читать далее…

Categories: JavaScript Tags: ,

Табуляция и дополнительня функциональность в textarea

13 апреля 2009 20 comments

НАДОЕЛО в texarea админок, форумов, блогов нажимать ctrl+s и получать диалоговое окно, нажимать на Tab и уходить с textarea, каждый раз пробелами выравнивать отступы в коде или наоборот, убирать излишние отступы, прыгая по стокам. В следствии чего появился следующий скрипт…

xedit.js – небольшая javascript библиотека для работы с текстом в textarea. Библиотека заточена под IE6+, FF2+, Opera9+, Chrome. Библиотека представляет собой статический класс xedit обеспечивающий следующую функциональность:

  • Табуляция. Tab действует не как переключатель на следующее поле, а как табуляция текста в textarea, одной или группы строк.
  • Обратная табуляция. Tab + shift позволяет убрать табуляцию слева как \t так и пробелы
  • Дублирование строк. Позволяет быстро продублировать нужную строку. Ctrl+Alt+Up дублирует строку вверх, Ctrl+Alt+Down дублирует строку вниз.
  • Соблюдение отступов. Новая строка имеет такой же отступ, что и предыдущая строка. При нажатии на Ctrl+Enter производится «хтмльный» перенос.
  • Перехват Ctrl+S и собственная обработка. Возможность задать свою функцию по нажатию на ctrl+s (только для IE, FF, Chrome)
  • Перехват закрытия окна/вкладки. Возможность задать свою функцию или сообщение по закрытию окна/вкладки (только для IE, FF, Chrome)

Читать далее…

Categories: JavaScript Tags: , ,