Latest posts

PHP Academy
15 Sept, 18:26
🐘 Что нового в PHP 8.6Релиз запланирован на 19 ноября 2026 года, сейчас версия проходит бета-тестирование.Из интересного:Частичное применение функций — можно заранее передать часть аргументов, оставив остальные на потом:$makeSlug = str_replace(' ', '-', ?); echo $makeSlug('Hello World'); // Hello-Worldclamp() — ограничивает значение заданным диапазоном. Например, clamp(150, min: 0, max: 100) вернёт 100. Time\Duration — класс для длительности с наносекундной точностью, арифметикой и сравнением. Значения по умолчанию для readonly-свойств — без возможности менять их после инициализации. Новый Polling API — единый интерфейс к механизмам вроде epoll и kqueue для циклов событий. Улучшенная обработка ошибок потоков — можно выбирать предупреждения, исключения или тихий режим.Разбор с примерами — https://laravel-news.com/php-8-6RFC частичного применения — https://wiki.php.net/rfc/pLaravel NewsWhat's New in PHP 8.6PHP 8.6 arrives November 19, 2026 with partial function application, a clamp() function, a Duration class, readonly property defaults, and new deprecations.
PHP Academy
26 Aug, 10:04
💡Совет по LaravelЗнаешь ли ты, что можно выбрасывать исключения условно всего в одну строку с помощью throw_if() — идеально для лаконичного кода в контроллерах и сервисах.


PHP Academy
26 Aug, 08:04
Приглашаем на курс для прокачки навыков архитектора и проектировщика, которые важны для профессионального роста программиста.🌐 С курсом «Системный дизайн высоконагруженных проектов» вы:▪️изучите ключевые фундаментальные паттерны и получите навыки проектирования проектов с миллионной аудиторией (балансировка, масштабирование апп/кешей/субд, высокая доступность и кластерные решения, шардинг, CAP/PACELS, консистентность, саги, транзакционные очереди и многое другое) ▪️поупражняетесь в проектировании и получите обратную связь на реальных задачах: магазин/маркетплейс, такси/доставка, обьявления, соцсети, дейтинг, игры, википедия, мессенжер, CDN, хранилище файлов, онлайн-кинотеатр, счетчики, удаленный мониторинг, интеграционные вебхуки, рассылки и тд. ▪️ научитесь планировать нагрузку и связывать бизнес-показатели с нефункциональными требованиями к системе


PHP Academy
25 Aug, 09:18
Сегодня хочу рассказать вам про одну ошибку, которую я часто встречаю у начинающих PHP-разработчиков — неправильную работу с датами и временем.Когда вы используете функции вроде date(), strtotime(), time() напрямую без явной установки временной зоны (timezone), ваш код может начать вести себя непредсказуемо. Особенно если ваш проект запущен на серверах в разных регионах.Чтобы избежать проблем: - Всегда задавайте временную зону явно через date_default_timezone_set('Your/Timezone'); в начале вашего приложения. - Или лучше используйте объекты DateTime и DateTimeZone, они гораздо удобнее для работы с временными зонами и манипуляциями с датами.Пример хорошего подхода: $date = new DateTime('now', new DateTimeZone('Europe/Moscow')); echo $date->format('Y-m-d H:i:s'); И еще одна рекомендация — всегда храните даты в базе данных в формате UTC, а уже при выводе преобразовывайте их в нужную
PHP Academy
22 Aug, 13:01
🔥 Хочешь быстрее расти в IT? Хватит учиться в одиночкуОкружение решает больше, чем кажется.Собрал папки и каналы, где можно быстрее влиться в нужное направление, следить за трендами и не вариться в своём пузыре.AI: t.me/ai_machinelearning_big_data Python: t.me/pythonl Linux: t.me/linuxacademiya Хакинг: t.me/linuxkalii DevOps: t.me/DevOPSitsec Docker: https://t.me/+90Z5TAyfuNU5YmRi Golang: t.me/Golang_google Rust: t.me/rust_code C++: t.me/cpluspluc C#: t.me/csharp_1001_notes Java: t.me/javatg JavaScript: t.me/javascriptv React: t.me/react_tg Frontend: t.me/front
1,200Open in Telegram
PHP Academy
17 Aug, 08:03
Сегодня я покажу вам, как удобно логировать в Laravel, не засоряя код и не превращая проект в болото из Log::info() на каждом шагу.💡 Используем каналы логирования правильноLaravel предоставляет мощную систему логирования на базе Monolog. Но часто мы ограничиваемся дефолтным логом. А зря.Например, создаём отдельный канал для логов оплаты:// config/logging.php 'channels' => [ 'payment' => [ 'driver' => 'single', 'path' => storage_path('logs/payment.log'), 'level' => 'info', ], ],Теперь в нужном месте можно писать:Log::channel('payment')->info('Платёж прошёл', ['user_id' => $user->id, 'amount' => $amount]);
PHP Academy
30 Jul, 15:40
Сегодня я покажу вам простой, но мощный способ, как ускорить отладку в Laravel при работе с большим количеством логики в контроллерах и сервисах.🔍 Ловим баги быстрее с помощью ray() от SpatieОбычно мы используем dd() или dump() в Laravel, чтобы посмотреть, что творится с переменными. Но как только проект становится крупнее — эти методы начинают мешать, особенно когда нужно отслеживать несколько значений в разных местах.Спасает Ray — инструмент от Spatie, который интегрируется с Laravel и выводит отладочную информацию в отдельное десктопное приложение.Пример:ray($user); ray($order)->blue(); ray()->showQueries();Ты можешь: - выводить переменные без прерывания скрипта; - смотреть SQL-запросы в реальном времени; - использовать цветовые метки, чтобы различать вывод из разных участков кода.⚙️ Установка1,860Open in Telegram
PHP Academy
30 Jul, 13:39edited
Есть возможность поработать на Кипре в одной из самых крупных фантех компаний с говорящим названием — Stripchat 😏Нанимают senior-инженеров в направлениях: Backend, Frontend и QA.Как вы понимаете, продукт востребованный, с миллионами активных пользователей.Задачи: проектирование сервисов, масштабирование платформы, решение ежедневных хайлоад-задач. 200k+ RPS, распределённые системы, event-driven архитектура (PHP, Go).Обещают полную релокацию на Кипр, EU-контракт, жилье на первое время.Узнать детали и откликнуться можно тутstripchat-offer.workBuild the platform behind a Top-50 global websiteBuild products for millions, solve complex engineering challenges, and grow with a team that ships fast.
PHP Academy
29 Jul, 09:53
Сегодня покажу вам простой, но очень удобный приём, который помогает наводить порядок в больших PHP-проектах — использование кастомных коллекций вместо массивов.Если вы когда-нибудь передавали в методы или возвращали из них массивы с объектами, то наверняка сталкивались с ситуацией, когда непонятно, что в массиве лежит. А потом кто-нибудь передал туда строку или null — и привет, баги.Я стал использовать свои классы коллекций. Простой пример:class UserCollection { / @var User[] / private array $users = [];public function __construct(array $users = []) { foreach ($users as $user) { $this->add($user); } }public function add(User $user): void {
PHP Academy
19 Jul, 13:10
Сегодня покажу вам простую, но мощную технику, которая может прокачать ваш PHP-код — Value Object вместо простых типов.Мы часто передаём параметры как string, int, array. Всё просто и понятно. Но как только бизнес-логика усложняется — типы начинают нас подводить.Допустим, у вас есть метод:function sendSms(string $phoneNumber, string $message): voidА теперь скажите честно — сколько раз вы ловили себя на том, что phoneNumber передаётся в неправильном формате? Или вовсе пустым? Или из другой страны, а вы это не предусмотрели?Вот тут и приходят на помощь Value Object'ы:final class PhoneNumber { public function __construct(private string $number) { if (!preg_match('/^\+7\d{10}$/', $number)) { throw new InvalidArgumentException('Invalid phone number'); } }
PHP Academy
19 Jul, 11:21
🔥 Хочешь быстрее расти в IT? Хватит учиться в одиночкуВ IT прокачивается тот, кто каждый день видит сильные идеи, новые инструменты, реальные задачи, вакансии и разборы.Окружение решает больше, чем кажется.Собрал папки и каналы, где можно быстрее влиться в нужное направление, следить за трендами и не вариться в своём пузыре.AI: t.me/ai_machinelearning_big_data Python: t.me/pythonl Linux: t.me/linuxacademiya Хакинг: t.me/linuxkalii DevOps: t.me/DevOPSitsec Docker: t.me/DevopsDocker Golang: t.me/Golang_google Rust: t.me/rust_code C++: t.me/cpluspluc C#: t.me/csharp_1001_notes Java: t.me/java_library JavaScript: t.me/javascriptv


PHP Academy
3 Jul, 17:35
🔥 Как избежать проблем с isset() и empty() в PHP?Сегодня разберём две часто используемые функции в PHP — isset() и empty(), которые могут вести себя не так, как вы ожидаете.📌 isset() Функция isset($var) проверяет, была ли переменная установлена и не равна ли она null. ❗ Пример подвоха:$var = null; var_dump(isset($var)); // falseЕсли переменной вообще нет в коде — тоже будет false.📌 empty() Функция empty($var) проверяет, считается ли переменная "пустой". ❗ Пустыми считаются: - "" (пустая строка) - 0 (число) - "0" (строка с нулём) - null
PHP Academy
25 Jun, 15:00
⚙️ PhikiPhiki помогает подсветить синтаксис. Написан на PHP. Он использует файлы грамматики TextMate и темы Visual Studio Code для генерации кода с подсветкой синтаксиса для веба.Название и публичный API Phiki во многом вдохновлены Shiki — пакетом, который делает примерно то же самое в экосистеме JavaScript. Реализация пакета также во многом вдохновлена vscode-textmate — мощным пакетом, лежащим в основе Visual Studio Code, Shiki и других инструментов.🔗 Github
PHP Academy
18 Jun, 16:25



PHP Academy
1 Jun, 13:40
Оптимизация скорости работы PHP кода 🏎️Сегодня я покажу вам несколько простых, но эффективных способов ускорить выполнение PHP-скриптов. Оптимизация кода – важная часть работы разработчика, ведь никто не любит медленные сайты. 🚀🔥 1. Избегайте лишних запросов к БД Частая ошибка – несколько одинаковых запросов к базе данных в одном запросе. Используйте кэширование (Redis, Memcached), а если данные редко меняются – сохраняйте их в файл.🔥 2. Используйте isset() вместо array_key_exists() Функция isset() работает быстрее, чем array_key_exists(), потому что она не только проверяет наличие ключа, но и сразу его значение.// Медленный вариант if (array_key_exists('key', $array)) { }// Быстрый вариант if (isset($array['key'])) { }🔥 3. Не злоупотребляйте foreach при больших объемах данных Если у вас массив с десятками тысяч элементов, попробуйте array_map() или array_walk() – они
PHP Academy
25 May, 20:37
Совет по Laravel 💡Знаете ли вы, что... вы можете временно отключить timestamps при сохранении модели?


PHP Academy
17 May, 09:29edited
✔️ Machine Learning Roadmap: нормальная карта входа в ML без сказок про «выучить нейросети за месяц»Большой русскоязычный roadmap по машинному обучению: от первого import numpy до LLM, RAG, fine-tuning, AI-агентов и MLOps.И это не просто очередной список ссылок в стиле «посмотри 40 курсов и станешь ML engineer». Внутри нормальная структура: что учить, в каком порядке, зачем это нужно и какой практический артефакт должен появиться после каждого этапа.Roadmap разбит на 7 треков:- фундамент: Python, математика, статистика, инструменты - классический ML: scikit-learn, табличные данные, метрики, валидация - Deep Learning: PyTorch, CNN, RNN, training loop - LLM и трансформеры: attention, KV-cache, RAG, LoRA, агенты - Generative AI: изображения, видео, аудио, мультимодальность - MLOps и прод: Docker, Kubernetes, CI/CD, мониторинг, serving - специализация


PHP Academy
12 May, 20:20
Один человек написал код, который сегодня работает на 20+ млрд устройствДаниэль Стенберг начал cURL в 1996 году как маленькую утилиту для скачивания файлов из интернета.Без большой команды. Без венчурных денег. Без хайпа. Просто писал open-source инструмент в свободное время.Почти 30 лет спустя cURL стал тихим фундаментом интернета.Он есть в iPhone, Android, PlayStation, Tesla, серверах, приложениях, сайтах и куче устройств, о которых мы даже не думаем. Его используют Spotify, YouTube, Netflix, Instagram и тысячи других сервисов.NASA даже использовала cURL на марсианском вертолёте Ingenuity.То есть код Стенберга буквально летал на другой планете.Самое безумное - первые 23 года он не зарабатывал на cURL ничего. Триллионные компании строили продукты на его коде, а он продолжал бесплатно поддерживать проект и отвечать на баг-репорты.В 2017 году король Швеции вручил ему


PHP Academy
10 May, 12:11



PHP Academy
26 Apr, 05:53
Совет по PHP/Laravel 💡Вместо того чтобы выполнять цикл foreach по массиву для поиска значения записи, вы можете использовать метод Laravel Collection contains().

Related Channels
Other channels in the same section of the catalogue.
