Pull to refresh
86
0
Alex Oleskevich @mariner

Пользователь

Send message

Zend Framework 2: Service Manager

Reading time 7 min
Views 21K

Service Manager (SM, CM) в ZF2.


Service Manager — это один из ключевых компонентов Zend Framework 2, который существенно облегчает жизнь разрабочика избавляя его от дублирования кода и рутинных операций по созданию и настройки сервисов, позволяя их конфигурировать на максимально высоком уровне. СМ, по своей натуре, является реестром сервисов, основная задача которого — создание и хранение сервисов. Можно сказать, СМ является очень продвинутой версий компонента Zend_Registry из Zend Framework 1.
СМ реализует паттерн Service Locator. Во многих частях приложения (например, в AbstractActionController) можно встретить функции getServiceLocator(), которые возвращают класс Zend\ServiceManager\ServiceManager. Такое несоответствие названия метода и возвращаемого типа легко объясняется тем, что getServiceLocator() возвращает объект, реализующий интерфейс ServiceLocatorInterface:
Читать дальше →
Total votes 20: ↑14 and ↓6 +8
Comments 35

Iterator, ArrayAccess, Countable: Объект как массив

Reading time 5 min
Views 30K

0. Intro.


В стандартной поставке php имеются 2 интересных интерфейса, позволяющие значительно изменять поведение объектов в языке.
Это Iterator и ArrayAccess. Первый позволяет итерировать объект через такие конструкции each, foreach, for. Второй же, в свою очередь, позволяет обращаться к объекту, как к массиву применяя привычное $array[] = 'newItem'. Соответственно, для полноценной эмуляции массива, объект обязан заимплементить оба интерфейса.
Читать дальше →
Total votes 74: ↑62 and ↓12 +50
Comments 39

Zend_Form_Element: создание своего элемента

Reading time 4 min
Views 1.8K

0. Intro.

В процессе разработки достаточно часто нужно использовать различные кастомные селекты, инпуты, загрузщики файлов и прочее. В этом случае приходится писать дополнительные обработчики на стороне клиента, так как ZF из коробки не знает ничего, кроме стандартных элементов форм (капча есть исключение). В этой статье будет рассмотрено создание элемента на базе facebook-like TextboxList плагина для jQuery, который выглядит вот так:

habr 1
Читать дальше →
Total votes 25: ↑21 and ↓4 +17
Comments 20

Восстановление убитых MBR и таблицы разделов

Reading time 4 min
Views 432K

0. Intro.


Ситуация следующая. Есть винт на 160Гб. На нем 2 раздела — 40Гб и 120Гб. С целью установки убунты как второй системы была произведена разбивка 120Гб -> 100+10+2+8.

Далее, с целью отката изменений, были объединены диски (10, 2 и 8) обратно в один 20Гб и отформатирован в NTFS. В нагрузку к этому, были проведены операции с MBR, результатом которой явилась ее смерть.

Итоги

1. При загрузке системы выводится сообщение MBR helper not found;
2. fdisk показывает один большой 160Гб диск.

Дураку понятно, что это начало веселой ночи.
Далее, под катом, решения вопроса.
Читать дальше →
Total votes 91: ↑78 and ↓13 +65
Comments 35

Oxygen-gtk. Единый вид приложений GTK и Qt

Reading time 1 min
Views 12K

0. Intro.


В рамках проекта KDE начал развиваться проект oxygen-gtk, главная задача которого — это создание единства внешнего вида GTK приложений, запущенных под KDE и нативных KDE приложений. В отличии от других движков с аналочными целями, этот не зависит от Qt.
Читать дальше →
Total votes 38: ↑35 and ↓3 +32
Comments 50

Скрипт для работы с виртуальными хостами apache2 на локале

Reading time 8 min
Views 3.2K

0. Intro


Для чего это все? Цели было 2:
  1. избавиться от рутины ковыряния в консоли и файлах
  2. получить экспы в разработке shell-скриптов.

1. Что это такое?


Ниже будет представлен скрипт, для работы с виртуальными хостами апача под кубунтой для локальной машины только. Для сервера врядли сгодится. Не для этих целей писался.
Читать дальше →
Total votes 14: ↑9 and ↓5 +4
Comments 14

Визуальная интеграция Firefox в KDE 4

Reading time 1 min
Views 6K

0. Intro.


Не секрет, что Firefox под KDE выглядит уж совсем коряво, даже со стилями qtcurve. Не знаю как кому, но мне лично хочется, что бы все приложения в моем DE выглядели одинаково. Поэтому, занявшись этим вопросом, я перепробовал кучу стилей для гнома (gtk styles таб в systemsettings) и плагинов для firefox.
Читать дальше →
Total votes 39: ↑31 and ↓8 +23
Comments 36

10 способов побороть проблемы в IE6

Reading time 3 min
Views 2.6K

1. Используйте DOCTYPE


Лучше всегда прописывать доктайп в заголовке каждой html-страницы, причем, строгий режим рекомендуется:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

для XHTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

от себя добавлю, что недопускайте никаких сторонних символов перед доктайпом. Ни пробелов, ни переносов строки — иначе появятся странные поля у body и html
Читать дальше →
Total votes 133: ↑88 and ↓45 +43
Comments 100

Улучшаем юзабилити Krusader

Reading time 2 min
Views 15K

0. Интро.


Несомненно, krusader является лидером среди графических файловых менеджеров. Внешне похож на знаменитый Total Commander, но функциональность слабее. Я сейчас покажу, как можно немного улучшить юзабилити для повседневного использования. А делать мы это будем через useractions. С их помощью, можно сделать практически любое действие с файлами и программой, не важно что, упаковка файлов одним кликом или сложные действия с группой файлов, или еще с чем (можно аж до закачки файлов с нета с последующей их обработкой).
Читать дальше →
Total votes 40: ↑31 and ↓9 +22
Comments 46

Установка SVN практически на любой хостинг (static svn)

Reading time 1 min
Views 4.4K
0. Интро

Практически всегда хостинг не предусматривает поддержку svn для конечного пользователя или эта возможность идет в качестве дополнительной платной опции, а обновлять проект с большим количеством файлов — занятие не из легких. Тем более, когда изменения затронули много связанных между собой файлов. Старый вариант через фтп или закачка архива с последующей его распаковкой не особо подходит, так как влечет за собой вероятность возникновения ошибок. Будь-то недокачка какого-то файла (ftp) либо неверные права на папки\файлы (архивом). Все это для примера. Но есть более удобный способ решить эту проблему. Установить svn на хостинг.
Читать дальше →
Total votes 40: ↑33 and ↓7 +26
Comments 67

Bluetooth в Linux

Reading time 3 min
Views 52K

1. Вступление


А вы знаете, что настроить bluetooth соединение с PC на Linux совсем не сложно?
Итак, сейчас мы создадим подключение к телефону\PDA, примонтируем файловую систему телефона к оной на ПК и создадим GPRS\EDGE подключение.

Читать дальше →
Total votes 53: ↑50 and ↓3 +47
Comments 45

Sendmail-заглушка для Linux

Reading time 2 min
Views 38K
Не так давно встала задача, установить заглушку для sendmail, дабы письма из PHP не отсылались на ложные адреса (при тестинге) или просто не возникала ошибка, а складывались аккуратно в папку. Аналогично тому, как это делает Денвер.
Читать дальше →
Total votes 47: ↑43 and ↓4 +39
Comments 36

Information

Rating
Does not participate
Location
Филиппины
Registered
Activity