Как стать автором
Обновить
-4
@AccessGrantedread⁠-⁠only

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

Отправить сообщение

Кастуем магией PHP

Время на прочтение2 мин
Количество просмотров6.1K
PHP замечательный язык программирования. При всех его недостатках он не перестает удивлять. Недавно столкнулся со следующим — на первый взгляд загадочным — его поведением.

Как известно PHP имеет встроенный шаблонизатор. Весь текст, который интерпретатор встречает между тегами обозначающими конец и начало PHP кода, он отправляет в буфер вывода. Убедиться в этом можно на следующем примере:
Читать дальше →
Всего голосов 89: ↑29 и ↓60-31
Комментарии22

Реализация шаблона проектирования декоратор на PHP

Время на прочтение2 мин
Количество просмотров12K
Полагаю сам декоратор а так же причины по которым использование этого шаблона предпочтительней классическому наследованию в описании не нуждаются. При желании о нем можно прочитать в английской или русской википедии. imageПоэтому сама статья — это всего лишь мои соображений по поводу одной из возможных реализаций этого шаблона а именно динамического декорирования в противовес широко распространенной технике статического декорирования.
Читать дальше →
Всего голосов 41: ↑19 и ↓22-3
Комментарии7

Реализация шаблона проектирования Singleton на PHP 5.4

Время на прочтение4 мин
Количество просмотров8.9K
Казалось бы, из всех шаблонов проектирования что может быть проще всем известного синглетона. Во многих классических примерах реализации на разных языках программирования она может занимать всего пару десятков строк а того и меньше.

image Так получилось, что я реализую этот шаблон вот уже второй год начиная с первого выхода PHP 5.3 в 2009 году. В то время у его предшественника версии 5.2 не было позднего статического связывания и для создания экземпляра класса в метод приходилось передавать его имя, что казалось мне архинеудобным.

С выходом PHP 5.4, взглянув еще раз на старую реализацию и на новые возможности языка, я переписал этот шаблон еще раз получив — как мне казалось тогда и кажется сейчас — конечный вариант.

Подробности реализации ниже.
Читать дальше →
Всего голосов 44: ↑16 и ↓28-12
Комментарии57

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность