🚀 Как построить workflow в PHP без боли
В каждом бизнес-приложении есть процессы: обработка заказов, онбординг клиентов, согласование документов. Но чаще всего именно workflow превращается в ад для разработчиков: куча сервисов, сложные тесты и боязнь что-то сломать.
Что обычно делают? Пишут огромный
🧩 Почему state machine не спасает
Кажется логичным уйти в state machine: всё по шагам, есть переходы. Но на деле — YAML-конфиги на десятки состояний, логика прячется в хендлерах, а изменения становятся кошмаром. State machine управляет состоянием, а бизнесу нужна прозрачная поведенческая логика.
🌱 Ecotone Orchestrator
Ребята из Ecotone предлагают другой путь — Orchestrator на базе Routing Slip pattern.
Теперь бизнес-процесс — это просто список шагов в коде.(на фото)
📌 Что это даёт:
🔸Понятные шаги вместо монолитных методов
🔸Масштабируемость без синхронизации и БД-состояний
🔸Асинхронные шаги там, где это нужно
🔸Прозрачная обработка ошибок и ретраи
🔸Изменения в workflow без миграций и даунтайма
💡 В итоге: меньше хаоса, больше контроля и возможность адаптировать процессы под клиента или продукт.
👉 Medium
Библиотека пхпшника
В каждом бизнес-приложении есть процессы: обработка заказов, онбординг клиентов, согласование документов. Но чаще всего именно workflow превращается в ад для разработчиков: куча сервисов, сложные тесты и боязнь что-то сломать.
Что обычно делают? Пишут огромный
OrderProcessingService
, где валидатор, оплата, склад и уведомления перемешаны в одном методе. В dev это ещё как-то живёт, но в проде любая ошибка превращается в пожар 🔥🧩 Почему state machine не спасает
Кажется логичным уйти в state machine: всё по шагам, есть переходы. Но на деле — YAML-конфиги на десятки состояний, логика прячется в хендлерах, а изменения становятся кошмаром. State machine управляет состоянием, а бизнесу нужна прозрачная поведенческая логика.
🌱 Ecotone Orchestrator
Ребята из Ecotone предлагают другой путь — Orchestrator на базе Routing Slip pattern.
Теперь бизнес-процесс — это просто список шагов в коде.(на фото)
📌 Что это даёт:
🔸Понятные шаги вместо монолитных методов
🔸Масштабируемость без синхронизации и БД-состояний
🔸Асинхронные шаги там, где это нужно
🔸Прозрачная обработка ошибок и ретраи
🔸Изменения в workflow без миграций и даунтайма
💡 В итоге: меньше хаоса, больше контроля и возможность адаптировать процессы под клиента или продукт.
👉 Medium
Библиотека пхпшника
❤7🥱2
🎮 КВЕСТОВАЯ ЛИНИЯ: «Путь Data Scientist'а»
⮕ Твой стартовый набор искателя данных:
⚡️ АКТИВЕН ВРЕМЕННЫЙ БАФФ: «Щедрость наставника»
Эффект: –30% к цене полного набора ДСника
Было: 121.800 ₽ → Стало: 84.900 ₽
☞ Что ждет тебя в этом квесте
📎 Забрать бафф
Рассрочки: 3 мес | 6 мес | 12 мес
⮕ Твой стартовый набор искателя данных:
Python — твое легендарное оружие (урон по багам +∞)
Математика — твой базовый интеллект (влияет на понимание алгоритмов)
Машинное обучение — твое дерево навыков (открывает новые способности)
⚡️ АКТИВЕН ВРЕМЕННЫЙ БАФФ: «Щедрость наставника»
Эффект: –30% к цене полного набора ДСника
Было: 121.800 ₽ → Стало: 84.900 ₽
☞ Что ждет тебя в этом квесте
— Получение артефактов: портфолио проектов и сертификаты— Прокачка от новичка до Senior Data Scientist— Босс-файты с реальными задачами из индустрии— Доступ к гильдии единомышленников
📎 Забрать бафф
Рассрочки: 3 мес | 6 мес | 12 мес
Что вас больше всего раздражает в работе?
Anonymous Poll
30%
глупые вопросы от коллег и клиентов
40%
созвоны
42%
работа с документами и отчётами
13%
презентации
15%
планирование
16%
написание рабочих писем
10%
собственно сами рабочие задачи
6%
свой вариант (напишу в комментариях)
⚡️ Будь как этот гений с картинки — предлагай свои условия работодателю, а не наоборот!
Кто нужен?
Но если вы пока джун — я бы предложил:
- Full-time контракт: 180к/мес после курса + опцион на карьеру в топ-компаниях
- Либо фикс за проект: стань ML-инженером за 39к вместо 44к с промокодом LASTCALL
🔗 Старт 9 сентября
Кто нужен?
Senior ML-Engineer с опытом работы более 6 месяцев в FAANG компаниях. Требование: разработать кросс-платформенное приложение-трекер зарплат с AI-распознаванием вакансий по резюме.
Но если вы пока джун — я бы предложил:
- Full-time контракт: 180к/мес после курса + опцион на карьеру в топ-компаниях
- Либо фикс за проект: стань ML-инженером за 39к вместо 44к с промокодом LASTCALL
🔗 Старт 9 сентября
❤3
💻 Подборка новостей по PHP за неделю:
🔹 CakePHP 5.2.7 — поддержка UUID V7, исправления в
🔹 Laravel 12.26 — добавлены
🔹 PHP 8.5.0 Beta 2 — вторая бета PHP 8.5. Цикл релизов продолжается.
🔹 PHP 8.3.25 и 8.4.12 — багфикс-релизы, обновление рекомендуется всем пользователям.
🔹 Symfony 7.3.3 — очередной стабильный релиз с исправлениями.
🔹 Symfony 25–31 августа 2025 — сообщество вспоминает Райана Уивера (SymfonyCasts), чьи уроки вдохновили тысячи разработчиков. Его вклад в Symfony и теплоту общения будут помнить и продолжать через обучение и поддержку семьи.
Библиотека пхпшника
#свежак
🔹 CakePHP 5.2.7 — поддержка UUID V7, исправления в
getEnv()
и валидации вложенных сущностей.🔹 Laravel 12.26 — добавлены
withHeartbeat()
для Lazy collections, toPrettyJson()
для коллекций и моделей, а также Wayfinder в React/Vue стартер-китах для типобезопасных маршрутов.🔹 PHP 8.5.0 Beta 2 — вторая бета PHP 8.5. Цикл релизов продолжается.
🔹 PHP 8.3.25 и 8.4.12 — багфикс-релизы, обновление рекомендуется всем пользователям.
🔹 Symfony 7.3.3 — очередной стабильный релиз с исправлениями.
🔹 Symfony 25–31 августа 2025 — сообщество вспоминает Райана Уивера (SymfonyCasts), чьи уроки вдохновили тысячи разработчиков. Его вклад в Symfony и теплоту общения будут помнить и продолжать через обучение и поддержку семьи.
Библиотека пхпшника
#свежак
❤1🔥1
Forwarded from Библиотека задач по PHP | тесты, код, задания
⌨️ Топ-вакансий по PHP за неделю
Backend (PHP Laravel) Developer — от 1 500 до 2 000 $, Удалёнка (Москва)
Senior PHP developer— 300 000 ₽, Удалёнка (Москва)
Программист PHP/Laravel/Vue.js — до 200 000 ₽, Удалёнка (Москва)
Senior/Lead PHP Developer — от 2500 до 4000 $, Удалёнка (Москва)
➡️ Еще больше топовых вакансий — в нашем канале PHP Jobs
Backend (PHP Laravel) Developer — от 1 500 до 2 000 $, Удалёнка (Москва)
Senior PHP developer— 300 000 ₽, Удалёнка (Москва)
Программист PHP/Laravel/Vue.js — до 200 000 ₽, Удалёнка (Москва)
Senior/Lead PHP Developer — от 2500 до 4000 $, Удалёнка (Москва)
➡️ Еще больше топовых вакансий — в нашем канале PHP Jobs
Иногда реально ощущение, что нас держат в Матрице.
Большинство сидит, читает статьи про ML, смотрит ролики «как это работает» — и всё.
❗ Сегодня последний день промокода Lastcall (−5000 ₽).
Уже завтра стартует первый вебинар по Машинному обучению — полный набор для выхода из Матрицы.
Кто готов вырваться из симуляции и ворваться в сезон найма?
👾 — я уже в команде Нео
👍 — хочу красную таблетку
🤔 — пока думаю, но интересно
Забирай полный комплект для ML-разработки: Python + Математика + Машинное обучение.
🔥 Скидка 30% действует только до 9 сентября → забираем себе
Большинство сидит, читает статьи про ML, смотрит ролики «как это работает» — и всё.
❗ Сегодня последний день промокода Lastcall (−5000 ₽).
Уже завтра стартует первый вебинар по Машинному обучению — полный набор для выхода из Матрицы.
Кто готов вырваться из симуляции и ворваться в сезон найма?
👾 — я уже в команде Нео
👍 — хочу красную таблетку
🤔 — пока думаю, но интересно
Забирай полный комплект для ML-разработки: Python + Математика + Машинное обучение.
🔥 Скидка 30% действует только до 9 сентября → забираем себе
🌚1
How to: Использование SQLite в продакшене с Laravel
SQLite — это отличная база данных для многих Laravel-приложений, особенно если ваша система не требует огромных масштабов. Она позволяет эффективно работать даже с большим количеством одновременных запросов, при этом не требуя сложной настройки сервера, как в случае с MySQL. Главным преимуществом SQLite является его простота: это один файл базы данных, который можно легко копировать, делая резервное копирование и миграцию простыми. В отличие от MySQL, который требует работы с демоном сервера и дополнительной настройки, SQLite использует ту же среду, в которой работает ваше приложение, минимизируя накладные расходы на межпроцессное взаимодействие.
Преимущества использования SQLite:
Легкость в настройке: Для работы SQLite достаточно лишь одного файла, что упрощает резервное копирование и перенос данных.
Минимизация накладных расходов: SQLite работает непосредственно в том же процессе, что и ваше приложение, исключая лишние расходы на сеть и межпроцессное взаимодействие.
Простота использования: Для большинства небольших и внутренних приложений SQLite может быть быстрее и проще, чем более сложные решения, такие как MySQL.
Этот подход подходит для приложений, которые не требуют огромной масштабируемости и могут работать на одном сервере.
В статье рассмотрены основные практические советы для использования SQLite с Laravel, включая улучшение производительности с помощью режима WAL и особенности работы с транзакциями.
👉 Читать статью
Библиотека пхпшника
SQLite — это отличная база данных для многих Laravel-приложений, особенно если ваша система не требует огромных масштабов. Она позволяет эффективно работать даже с большим количеством одновременных запросов, при этом не требуя сложной настройки сервера, как в случае с MySQL. Главным преимуществом SQLite является его простота: это один файл базы данных, который можно легко копировать, делая резервное копирование и миграцию простыми. В отличие от MySQL, который требует работы с демоном сервера и дополнительной настройки, SQLite использует ту же среду, в которой работает ваше приложение, минимизируя накладные расходы на межпроцессное взаимодействие.
Преимущества использования SQLite:
Легкость в настройке: Для работы SQLite достаточно лишь одного файла, что упрощает резервное копирование и перенос данных.
Минимизация накладных расходов: SQLite работает непосредственно в том же процессе, что и ваше приложение, исключая лишние расходы на сеть и межпроцессное взаимодействие.
Простота использования: Для большинства небольших и внутренних приложений SQLite может быть быстрее и проще, чем более сложные решения, такие как MySQL.
Этот подход подходит для приложений, которые не требуют огромной масштабируемости и могут работать на одном сервере.
В статье рассмотрены основные практические советы для использования SQLite с Laravel, включая улучшение производительности с помощью режима WAL и особенности работы с транзакциями.
👉 Читать статью
Библиотека пхпшника
Единый код валидаторов на фронте и бэке (PHP + FFI + Go + JS)
Когда фронт и бэк на разных языках (например, JS + PHP), часто приходится писать одинаковые валидаторы дважды. Это не только лишняя работа, но и риск ошибок, когда логика валидации на фронте и бэке не совпадает.
🎯 Решение: Используем FFI (Foreign Function Interface) для запуска JavaScript-кода на PHP с помощью Go. Это позволяет использовать один и тот же валидатор и на фронте, и на бэке, обеспечивая синхронизацию логики.
✅ Преимущества: Один код для валидации на двух уровнях, меньше ошибок и проще поддержка.
🚨 Недостатки: Может быть немного медленно из-за FFI и проблемы с поддержкой юникодных символов в Go.
🔧 Хабр
Библиотека пхпшника
Когда фронт и бэк на разных языках (например, JS + PHP), часто приходится писать одинаковые валидаторы дважды. Это не только лишняя работа, но и риск ошибок, когда логика валидации на фронте и бэке не совпадает.
🎯 Решение: Используем FFI (Foreign Function Interface) для запуска JavaScript-кода на PHP с помощью Go. Это позволяет использовать один и тот же валидатор и на фронте, и на бэке, обеспечивая синхронизацию логики.
✅ Преимущества: Один код для валидации на двух уровнях, меньше ошибок и проще поддержка.
🚨 Недостатки: Может быть немного медленно из-за FFI и проблемы с поддержкой юникодных символов в Go.
🔧 Хабр
Библиотека пхпшника
😁15❤1😢1
composer/pcre — Библиотека-обертка для стандартных функций
Это обёртка над стандартными функциями PHP
✅ Делает вызовы функций регулярных выражений безопаснее и удобнее.
✅ Генерирует исключения при ошибках (вместо того, чтобы просто возвращать
✅ Возвращает более предсказуемые результаты (например, всегда массив строк, а не
✅ Упрощает написание кода и улучшает читаемость — не нужно постоянно проверять
Для чего нужна
📦 В первую очередь библиотека используется внутри Composer, чтобы избежать неожиданных багов при работе с регулярками.
👨💻 Её можно использовать и в своих проектах, если хотите работать с регулярными выражениями в более строгом и типобезопасном стиле.
🔗 Github
Библиотека пхпшника
#инструменты
Это обёртка над стандартными функциями PHP
preg_*
, которая:✅ Делает вызовы функций регулярных выражений безопаснее и удобнее.
✅ Генерирует исключения при ошибках (вместо того, чтобы просто возвращать
false
и молчать).✅ Возвращает более предсказуемые результаты (например, всегда массив строк, а не
false|null
).✅ Упрощает написание кода и улучшает читаемость — не нужно постоянно проверять
preg_last_error()
или === false
.Для чего нужна
📦 В первую очередь библиотека используется внутри Composer, чтобы избежать неожиданных багов при работе с регулярками.
👨💻 Её можно использовать и в своих проектах, если хотите работать с регулярными выражениями в более строгом и типобезопасном стиле.
🔗 Github
Библиотека пхпшника
#инструменты
❤1👍1