Рубрика: PHP
Шаблоны ООП на PHP: шаблон singleton
Одиночка — это порождающий паттерн, который гарантирует существование только одного объекта определённого класса, а также позволяет достучаться до этого объекта из любого места программы Возвращает следующее: Другие примеры реализации: https://refactoring.guru/ru/design-patterns/singleton/php/example https://designpatternsphp.readthedocs.io/ru/latest/Creational/Singleton/README.html
Шаблоны ООП на PHP: шаблон Fabric Method
Фабричный метод (Factory method) также известный как Виртуальный конструктор (Virtual Constructor) — порождающий шаблон проектирования, определяющий общий интерфейс создания объектов в родительском классе и позволяющий изменять создаваемые объекты в дочерних Пример кода шаблона фабричный метод. По факту фабрика создает экземпляры классы в предопределенным интерфейсом. Возвращает следующее Другие примеры реализации: https://refactoring.guru/ru/design-patterns/abstract-factory/php/example#lang-features https://designpatternsphp.readthedocs.io/ru/latest/Creational/FactoryMethod/README.html
Локализация интернет-магазина на польский язык
Я тут Django ругал. За всяко разно. А видимо зря. Ой зря. Короче, лежал у меня тут сайт, https://www.stamp-collection.ru никого не трогал. Сайт на MODx Revolution написан. Но тут что-то накатило, есть время, и потребность чем-то себя занять полезным. Дай думаю локализую на EN (https://en.stamp-collection.ru) + PL (https://pl.stamp-collection.ru) И началось А ничего что выбор языка… Читать далее »
CMS vs Frameworks
После трех лет поддержки сайта на Django появилось время поковырять один из своих старых заброшенных интернет-магазинов (нужно актуализировать цены, допилить кучу всякого по-мелочи, подправить косяки). Сайт на MODx Revolution И… пожалуй да… пожалуй то время, когда я работал с CMS кануло в лету. Этот сайт на Laravel конечно переносить не буду, там 4к страниц в… Читать далее »
Определение типов в языках с статической и динамической типизацией
После нескольких лет наблюдения за Python заскучал по языкам с статической типизацией. Опыт небольшой, школьный курс Turbo Pascal. Но зато там все было четко. А сегодня что, сегодня какая-то анархия. Прям хоть садись и TypeScript изучай. А то что-то начинает раздражать. Примеры предопределения типов, как это бывает в языках с динамической, ну и соотв. статической,… Читать далее »
Laravel. PHP framework здорового человека
Смотрю видео уроки по Laravel (поставил тоже). Кажется наконец-то нашел framework здорового человека на php По духу очень напоминает Django но под капотом не Python, а PHP. А это значит с фигурными скобочками отделяющими блоки и точками с запятой после окончаний инструкций и прочими плюшками PHP последних версий
PHP Bitrix эмоции
После двух лет программирования на Django (Python) попался мне на глаза проект на Bitrix. Старый знакомый попросил внедрить набор задач по внешней оптимизации. Ну, в рамках подработки, на выходные, взялся. И уже очень сильно жалею о потраченном времени. Лучше бы катался на велосипеде вокруг озера все это время В двух словах — кровь из глаз… Читать далее »
CMS переезжают на Frameworks
Забавно наблюдать, как, многие старые CMS, переезжают на фреймворки. Например phpBB сегодня уже на Symfony, а вот обновлял сейчас древнюю версию MODx Evo 1.46 так в версии 2.0 она уже на Laravel Интересно, WordPress на что-нибудь тоже со временем портируют, или так и будет WordPress?
Обновился с PHP 7.0 до PHP 7.3
Обновился с PHP 7.0 до PHP 7.3; php становится строже, куча ошибок связанных с синтаксисом комментариев. Там где еще вчера можно было и так и так, сегодня syntax error и останавливает интерпретацию PHP 7.3 теперь наказывает за А вот так можно и нужно:
PHP 8.0 что нового
Прочитал только что про нововведения в php 8, медленно но верно старый добрый php превращается в какого-то монстра, за нововведениями которого, просто перестаешь успевать следить Ты еще вроде как не успел переварить все нововведения 5.3, как выходит полностью переработанная 7-ка, с нововведениями, которую ты тоже не успел переварить, и выходят какие-то очередные велосипеды, уже на… Читать далее »
PHP var_dump()
Люблю PHP за var_dump() Сейчас разбираюсь в коде на python и вот это вот как в нем реализован аналог var_dump() from inspect import getmembers from pprint import pprint pprint(getmembers(yourObject)) Даже если оставить за скобками подключаемые библиотеки. Сама конструкция pprint(getmembers(yourObject)) уступает потенциально возможной альтернативе вроде getdump(yourObject) Не понимаю почему нельзя было все включить внутрь getdump(), в… Читать далее »
Yii2 это rails on php
Комментарий с habr.ru Yii2 это rails on php Не знаю, что там с этим rails, но чтобы вывести обычную ссылку Update на Yii2 нужно сделать, что-то следующее Пока у меня претензии исключительно к неочевидности хелперов, которые нужно или знать, или не использовать. По остальному, ну имхо ActiveRecord удобная штука. #yii2 #php #activerecord
Расчет разницы между двумя днями переданными в формате string и приведенными к формату DateTime
Расчет разницы между двумя днями переданными в формате string и приведенными к формату DateTime. На входе 2 даты. Например заезда в отель, и выезда из отеля. Прибытия и выбытия ,если больше нравится. На выходе количество дней. if ($_POST[«type»] == «room»){ $interval = date_diff(new DateTime($data_in), new DateTime($data_out)); $interval = $interval->format(‘%R% дней’); }
PHP 5.3+ & OOP & Design Patterns — Simplemind Scheme
Тестирую phpQuery парсер nokogiri
Попробовал phpQuery и nokogiri для парсинга html документа в DOM объект Думал сделать парсер для того чтобы спарсить несколько тысяч изображений под личные нужды, ну вот хотелось чтобы он работал с объектами. Чтобы можно было делать конструкции вроде $details = $doc->find(‘a’) Потратил 1-2 часа чтобы вникнуть в то как работает nokogiri. В итоге при парсинге… Читать далее »