В одном из постов нашего блога рассматривался класс registry, где механизм передачи данных между контейнером и внешней средой использовал магические методы __set и __get. Однако есть ещё один интересный механизм – встроенный интерфейс ArrayAccess. Интерфейс переопределяет квадратные скобки («[]«) у объекта, позволяя обращаться к нему как к массиву.
Здесь мы рассмотрим какой из этих методов быстрее.
Читать далее…
Были у меня необходимости выявлять где та или иная функция вызывается, в чужом коде. И не всегда на тестируемой машине был установлен xDebug. Собственно к делу коду. Функция выводит на экран последовательность инсрукций которые её вызвали Читать далее…
Что-то зачастили вопросы типа «как объявить все глобальные переменные в функции или методе?». Помимо пробегания глобального массива $GLOBALS foreach-ем, стоит обратить внимание на такую чудесную PHP-функцию как extract. То есть всё решение сводится к следующему коду: Читать далее…
Меня всегда интересует как надо писать код что бы он выполнялся быстро. Поэтому за некоторое время у меня накопилось несколько ссылок на ресурсы, которые приоткрывают секреты быстрого кода, коими решил я поделиться.
Читать далее…
Сегодня вышла новая версия дистрибутива Ubuntu – 9.04 Jaunty Jackalope.
На сайте пока еще ссылки все ведут на Release Candidate. Но мы то знаем где искать! =)
Читать далее…
За что я люблю FireFox так это за его расширения, особенно мне нравиться блокировщик рекламы Adblock. Которое позволяет избавиться от навязчивой рекламы в Интернете, которая часто загружается дольше всего остального на странице, постоянно отвлекает своей анимацией и тупыми попапами.
Собственно о чем я? Задавался я идеей найти фильтры для Adblock, которые позволяли бы отлично блокировать рекламу и в итоге находил длиннющие списки блокировки по маске и меня это не воодушевило. Поэтому я решил составить свой сборник фильтров, костяк их – 4 регулярки которые и блокирую бОльшую половину рекламы, остальное, возможно тоже внесу в регулярки, хотя всё всё равно не опишешь РегВыром
.
Сюда и буду выкладывать последние версии сборника фильтров.
Читать далее…
Из-за длинных слов лопается вёрстка?
overflow:hidden конечно решение, но есть ещё одно решение, безвредное к тексту, в виде тега <wbr /> – тег потенциального переноса.
Читать далее…
По опыту скажу, что иногда есть необходимость конвертировать данные из одной кодировки в другу, но стандартный метод iconv недоступен (собственно и правильно – жрёт очень много, а используется мало). Тогда и может пригодится следующий скрипт, объявляющий функцию iconv. Конвертирование происходит через MySQL.
Читать далее…
Выкладываю бета версию библиотеки для jquery.
Данный плагин управляет различными окнами от маленьких тултипов до окон во весь экран.
Большая просьба обо всех найденных ошибках пишите в комментах или говорите мне 
Пример использования всех видов окон вы найдете в архиве с исходниками.
IE пока не поддерживается (хотя фиг его знает я не тестил, но скорее всего нет), пока не было времени подгонять под него, обещаю займусь в ближайшие выходные чесслово
Update
Поправил баги, теперь работает более стабильно, пикчер поправлю при следующем обновлении 
Совместимость с ие пока отсутствует, но над этим работаю.
Читать далее…
НАДОЕЛО в 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)
Читать далее…