tgindex
The Fly's PHP - Делаем из Мухи Слона

The Fly's PHP - Делаем из Мухи Слона

Статистика
@flyphpБлогирусский

Авторский блог Сергея Мухина Чат: @fly_php_public Сайт автора: https://sergeymukhin.com

Последний пост
8 июл.
Последнее чтение
14:46
Постов за неделю
0
Всего постов
21
Тип
открытый
Язык
русский
Категория
Блоги
В каталоге с
01:41
Подписчики
416
0 за 1 дн.
Сутки
 
Неделя
 
Месяц
 
Просмотров на пост
1 081
21 постов
Вовлечённость
259,9%
к подписчикам
Постов в день
0,0
всего 21
Упоминаний
0
каналов
Охват размещения
оценка
1/24сутки в ленте
1/48двое суток
1/72трое суток

Оценка по просмотрам недавних постов: пост набирает почти всё за первые сутки.

Посты

  • Первый официальный State of PHP опрос открыт: https://jb.gg/php-survey-2026 В сообществе уже было много опросов, но официального охватывающего весь PHP-мир, до этого не было. И вот PHP Foundation запартнерился с JetBrains, чтоб провести такой и сделать его ежегодным. Мы взяли за основу вопросы из PHP-секции JetBrains DevEco. Обновили немного. Потом запустили сбор идей вот тут. После этого еще раз обновили на основе ответов в этой форме и комментариев. Не обошлось и без косяков. Сначала добавили секцию про AI, но фидбек был не очень, поэтому приняли решение сделать секцию полностью опциональной в опросе. В общем учтем недоработки обязательно в следующем году. А пока предлагаем пройти текущий опрос! Занимает около 15 мин. И конечно же, результаты будут полностью публичными, включая сырой датасет. Пожалуйста, помогите распространить среди коллег и сообщества – чем больше ответит, тем лучше будут данные. А если большинство проголосует за true async в вопросе про желаемые фичи, то это будет хорошим аргументом в пользу соответствующего RFC. Ну или против, если мало проголосует 😈

  • 3 июн.326102из Edmond Dantes

    Вышел TrueAsync 0.7.0, краеугольная версия, которая определяет необходимый API для асинхронного программирования. Отныне работа над API будет заморожена. Релиз соединяет два мира: потоки и корутины в единое целое, позволяя комбинировать CPU BOUND/IO BOUND задачи. Дополнительное расширение-сервер на С помогает использовать async серверные приложения. https://true-async.github.io/en/download.html Пост Edmond Dantes из 🐘 PHPeople.

  • В конце 2025 года проводился ежегодный опрос русскоязычного PHP-сообщества. Результаты опроса опубликованы! https://phpcommunity.ru/2026-php

  • 🚀 Большой ежегодный опрос по PHP 🐘 🤘 Присоединяйся и помогай комьюнити становиться только лучше! Мы запускаем очередной ежегодный опрос, чтобы выяснить, на каких технологиях мы работаем, чем живём и в каком направлении движемся. На этот раз командой Live PHP подготовили для вас улучшенную версию опроса, чтобы собрать самые актуальные данные и взглянуть на развитие PHP в 2025 году. В прошлом году 1207 разработчиков поделились информацией о своих предпочтениях: какие версии PHP они используют, какие фреймворки любят и как относятся к ИИ. 📊 На этот раз мы посмотрели на опрос под другим углом и постарались сделать его ещё лучше! Присоединяйся к нашему анонимному опросу и дай знать, в каком направлении было бы интересно развиваться! А ещё мы традиционно разыгрываем слонов. Хотя опрос анонимный, но если ты оставишь свой email, то сможешь поучаствовать в розыгрыше слона от канала Пых. ✍️ Проходи опрос и помоги собрать аналитику для русскоязычной PHP-тусовки! По итогам сделаем подборки статей, докладов, каналов по PHP. Все результаты опубликуем на phpcommunity.ru Сделай свой вклад уже сегодня!

  • Всем привет! Я никуда не пропадал 😄 - работы много, пока очухаюсь и вижу что ребята из ру сообществ PHP @laravel_cutcode , @phpyh , @php_fart итак запостили уже это - то новость не дублирую. А так Всех с прошедшими праздниками! Что ждем в 2026 году - PHP 8.6 получается. Помнится только 5.6 добиралась до такой минорной версии. Эх, в свое время упустили возможность зарелизить 6.6.6 😈 В 8.6 стали потихоньку апрувить pull requests: - как постил @phpdigest об одобрении rfc пару месяцев назад, а в декабря слили PR с новой функций clamp, которая, кстати, пыталась пробиться еще в PHP 8.2, но попала только в 8.6 реализацией второй версии. Функция clamp проверяет, находится ли сравниваемое значение в пределах определенного диапазона. Если значение находится в диапазоне, возвращает это значение; если значение не находится в диапазоне, возвращает ближайшее значение. Пример: clamp(5, 0, 100); // 5 clamp(-5, 0, 100); // 0 clamp(3.01, 1.6, 4.2); // 3.01 Там в RFC, на самом деле, помимо целочисленных и вещественных значений, есть еще сравнение значений других типов, кому интересно: clamp(2, min: 1, max: 3) // 2 clamp(0, min: 1, max: 3) // 1 clamp(6, min: 1, max: 3) // 3 clamp(2, 1.3, 3.4) // 2 clamp(2.5, 1, 3) // 2.5 clamp(2.5, 1.3, 3.4) // 2.5 clamp(0, 1.3, 3.4) // 1.3 clamp(M_PI, -INF, INF) // 3.141592653589793 clamp(NAN, 4, 6) // NAN clamp("a", "c", "g") // "c" clamp("d", "c", "g") // "d" clamp(new \DateTimeImmutable('2025-08-01'), new \DateTimeImmutable('2025-08-15'), new \DateTimeImmutable('2025-09-15'))->format('Y-m-d') // 2025-08-15 clamp(new \DateTimeImmutable('2025-08-20'), new \DateTimeImmutable('2025-08-15'), new \DateTimeImmutable('2025-09-15'))->format('Y-m-d') // 2025-08-20 - что еще интересное слили так это вывод места ошибки в йункциях json_decode и json_last_error_msg, т.е. если до PHP 8.6 сообщения об ошибках содержали только тип ошибки и описание, то начиная с PHP 8.6, все ошибки декодирования пытаются включить местоположение, где произошла ошибка: $json = '[{'; json_decode($json, flags: JSON_THROW_ON_ERROR); // JsonException: Syntax error near location 1:3 Там если посмотреть тесты 1 2 3 4 5 6 7 8 9 10 много что пробовали запихать)

  • Только что на php.net опубликовали PHP 8.5! Тег уже два дня как стоит, но я ждал финального аккорда. По этому поводу держите мой доклад со Стачки «PHP 8.5 не сбавляет темп!». Из него вы узнаете про основные фичи новой версии и нюансы их применения. Основные таймкоды: 01:04 Все способы получения первого элемента массива в PHP (в т. ч. бредовые) 05:20 Pipe operator v3 10:56 URL Api 17:20 Clone with v2 21:24 #[NoDiscard] 24:07 Closure и FCC в константных выражениях 27:57 Persistent cURL handles 29:33 Асимметричная видимость статических свойств 30:00 Рекурсивные замыкания 37:41 Типизируем array_first() https://youtu.be/OIFbU5oypig https://vkvideo.ru/video-228746873_456239122 https://php.net/releases/8.5/ru.php

  • 💙 Пых.конф’25 — главное PHP-событие года! PHP сегодня в самом расцвете сил: • 20 человек в ядре, финансируемых PHP Foundation. • Релизы каждый год с десятками новых фичей. • Async, типизация, атрибуты, выразительный синтаксис. • Обслуживает миллиарды пользователей по всему миру. Оставалась только одна проблема — русскоязычным инженерам не хватало пространства для обсуждения этим тем. Мы её решили. Пых.конф — абсолютно новая конференция с актуальной программой, доступными билетами и насыщенным offstage-движем. • Асинхронность и протоколы для неблокирующего I/O. • RAG в PHP-бэкендах и круглый стол «Кодим с ИИ». • Архитектурные каноны: DDD, модульность, идемпотентность. • Производительность: от памяти и массивов до воркеров и CI. • Yii3, Doctrine, Swoole, WordPress и Битрикс — экосистема во всей красе. • Не только PHP: YDB, Postgres, Docker, OpenAPI. • Fail-митап и Открытый микрофон для всех, кто захочет высказаться. • Игры и конкурсы на стендах партнёров — компаний, преданных PHP. Мы сделали то, чего сами ждали много лет. Не хватает только тебя. Забрать билет | Ничего не пропустить | Собрать свою программу

  • #Article Тоже не смог пройти стороной PHP дженерики. Читайте на хабре.

  • Мы выложили всю программу! Несколько тем для затравки: • PHP True Async: Асинхронность из коробки • Нестандартное управление памятью в PHP • Как писать неблокирующие клиенты на PHP • Переход с Laravel на Swoole+Hyperf • RAG: Внедряем AI в PHP-бэкенд • Внутри Yii3 • YDB: от SQL к распределённому SQL ⚡️ https://conf.phpyh.ru/program Успей купить билет по июльской цене за 13 500 рублей!

  • Заканчиваем приём заявок на доклады Завтра в 18:00 мы закроем подачу заявок на доклады на Пых.конф’25. Если у тебя есть идея для выступления — самое время закинуть её в Хобота! Мы рассматриваем все тезисы и помогаем с их доработкой. Пожалуйста, перешли это сообщение в чат коллегам, вдруг они не знали.

  • В PHP 8.5 наконец-то будет clone with! Как-то незаметно в PHP 8.5 приняли долгожданный RFC https://wiki.php.net/rfc/clone_with_v2. 1. Клонирование теперь не только языковая конструкция, но и функция clone(object $object, array $withProperties = []): object. Благодаря этому можно писать array_map(clone(...), $myObjects). 2. Вторым аргументом можно передать новые значения свойств для склонированного экземпляра. Переопределить можно любые видимые в текущей области свойства, в том числе readonly, что наконец-то даёт нам полный инструментарий для работы с иммутабельными структурами: final readonly class Request { public function __construct( public string $path = '', public array $headers = [], ) {} public function withPath(string $path): self { return clone($this, ['path' => $path]); } public function withHeader(string $name, string $value): self { return clone($this, ['headers' => [ ...$this->headers, $name => $value, ]]); } } new Request() ->withPath('/phpyh') ->withHeader('Content-Type', 'application/json'); Почему это важная фича и как без неё обходиться прямо сейчас, подробно рассказал Brent Roose в ролике 📹 Cloning Readonly Classes in PHP 8.2. ____________ До конца завтрашнего дня билеты на Пых.конф’25 всего по 12 000 рублей!

  • 💙 Пых.конф’25 — старт продаж! Пых.конф — новая PHP-конференция для всех от автора канала Пых Валентина Удальцова. Единый язык. Кто-то из нас пишет на Yii и Laravel, другие выбирают Битрикс и WordPress, третьи экспериментируют с AMPHP и Swoole. Проекты разные. Подходы разные. Но язык один — PHP. Пых.конф даёт слово каждому! Пространство PHP. Пых.конф объединяет русскоязычное PHP-сообщество в одной точке. Здесь делятся опытом, находят единомышленников и обсуждают, как проектировать, разрабатывать и поддерживать любые бэкенды на PHP. 🕔 19 сентября 🏘 Москва, Конгресс-центр ЦМТ 👥 400 участников 🔢 4 зала 🎙 28 докладов Сегодня мы запускаем сайт и открываем продажи билетов по цене для ранних пташек! Заходи на conf.phpyh.ru и забирай свой билет за 10 000 руб. до 10 июня 14:00! YouTube | VK Видео

  • Валентин Удальцов и канал Пых открыли продажу билетов на Пых.конф 2025, думаю билеты долго висеть не будут)) разбираем пока есть возможность P.S. Я свой уже взял)

  • С днем рождения, PHP! 🎉🐘💜 Мы сделали крутого лего слоника специально к 30-летию PHP: https://www.youtube.com/watch?v=mmsKDVAvrbw Будем разыгрывать несколько таких на PHPverse 17 июня: https://lp.jetbrains.com/phpverse-2025/ Это бесплатный онлайн ивент от команды PhpStorm. Вернее ивент на самом деле офлайн — почти все ребятки из PHP Foundation, а также еще несколько core контрибьюторов PHP, и ребятки из сообщества приезжают в Амстердам в офис JetBrains. Будем транслировать доклады Тейлора (Laravel), Николаса Грекаса (Symfony), Кевина Дунгласа (FrankenPHP) и других ребяток. Еще запишем всякого закулисья и выложим позже. Регистрируйтесь, чтоб не пропустить. Ну а сегодня смотрим стрим на CutCode: https://www.youtube.com/live/85xnTYzVtgw

  • К сожалению, на подготовку условия задачи и настройку Хобота на приём ответов потребовалось больше времени, чем мы ожидали. Поэтому мы переносим конкурс на 19:30 — приезжайте домой с работы, подписывайтесь на Пых.конф’25 и будьте готовы!

  • Очередная токсик среда. Как не хотелось не трогать сам PHP, но придётся, потому что моя жепь с этого немного подгорела на #RandomBeer в предыдущую пятницу. PHP Lazy Objects

  • Всем, привет! С прошлыми майскими праздниками, и с будущими тоже! 🎉 Во всех PHP сообществах наступила тишина, или все отдыхают, или усердно работают 😄 Так или иначе, под шумок апрельских и майских деньков ворвался и был одобрен RFC по добавлению новых функций для работы с массивами: array_first() и array_last() в PHP 8.5. Как видно из названий, это функции для получения первого и последнего значения передаваемого массива. Примеры результатов: array_first([1, 2, 3]); // 1 array_first([2, 3]); // 2 array_first(['a' => 2, 'b' => 1]); // 2 array_first([null, 2, 3]); // null array_first([]); // null array_first([$obj, 2, 3]); // $obj array_first([1])); // 1 array_first([true]); // true array_last([1, 2, 3]); // 3 array_last([2, 3]); // 3 array_last(['a' => 2, 'b' => 1]); // 1 array_last([2, 3, null]); // null array_last([]); // null array_last([2, 3, $obj]); // $obj array_last([1])); // 1 array_last([true]); // true И тут возможно возникнет вопрос? Что? Это было добавлено только что, неужели ранее подобных функций не было в PHP, языке в котором есть почти все что угодно для работы с массивами. И действительно только что. Достаточно вспомнить, что массив в PHP - это монструозный комбайн всего, что только можно придумать. Соответственно метод "влоб" - получения элемента по нулевому индексу, не всегда даст ожидаемый результат: $array = [ "g" => 456, 2, 4 => "string" ]; var_dump($array[0]); //выдаст 2 [$first] = $array; // какая-нибудь деструктуризация выдаст тоже 2 Заглянем в недалекое прошлое, в 2018 год, PHP 7.3, в то время были приняты такие функции как array_key_first() и array_key_last(). Но возможно для кого-то будет новостью, что в том же RFC предлагалось ввести так же такие функции как array_value_first() и array_value_last(), что логично возвращали бы значения первого и последнего элемента в массиве. Но эти функции были отклоненны, почему, не совсем понятно, может кто-то из подписчиков помнит и знает доподлинную причину отклонения, либо просто время не пришло, и нужны были дополнительные 7 лет для переосознания 😀 Так вот с тех пор получать ключи стало проще, нежели ранешнее array_keys($array)[0], а если еще массив был пустым, то обязательная проверка на пустоту или вообще увеличение когнитивной сложности реализации в виде циклов (что-то достаточно приближенно к современному программированию на каком-нибудь golang). Получение первого и последнего элементов массива тоже стало проще: var_dump($array[array_key_first($array)]); // 456 var_dump($array[array_key_last($array)]); // "string" А что было до PHP 7.3? Кроме указанного способа по получению ключей, а затем значений, еще с PHP 4, были функции reset() и end(). Были, есть и будут :) И используя их можно получить вполне ожидаемый результат: var_dump(reset($array)); //456 var_dump(end($array));exit; // "string" // или те же array_shift, array_pop тоже технически выполнят что нужно var_dump(array_shift($array)); //456 var_dump(array_pop($array)); // "string" так зачем тогда все эти телодвижения по вводу новых функций? Просто все существующие хитрости,семантически являются неправильным подходом, поскольку они изменяют внутреннее состояние массива. Кроме того, это также не работает должным образом для, например, массива, возвращаемого из функции или других подобных непредусмотренных случаев. А как вы думаете, нужны ли были эти новые функции или итак по старинке справились бы? ❓

  • PHP True Async: обсуждаем RFC с автором Сегодня в 19:00 по Москве мы встретимся с Дмитрием и Вадимом, чтобы обсудить RFC PHP True Async и перспективы появления нативной асинхронности в PHP. Основные темы: ▸ Опыт других языков. ▸ Экосистемы AMPHP, ReactPHP, Swoole. ▸ Нужна ли в PHP structured concurrency? Как это согласуется с файберами? ▸ Будет ли поддержка многопоточности, как, например, в Go? ▸ На какие этапы будет разбит такой большой проект? https://youtu.be/K9FnRQIzklM https://vkvideo.ru/video-228746873_456239042 🎫 Авторы самых интересных вопросов в чате трансляции получат бесплатные билеты на третий Пыхап! Для подготовки рекомендую изучить RFC, а также посмотреть доклад Вадима Чем вам не угодил асинхронный PHP? Другие полезные ссылки в первом анонсе.

  • Пыхап 8 февраля! Друзья, через 2.5 недели пройдёт второй Пыхап! В программе у нас снова 3 доклада и новая секция: 🤔 Шардирование в RabbitMQ Антон Растрыгин расскажет, как разбирать очередь параллельно, но последовательно. 🤝 Гибкий проект с фича-флагами Unleash Рустэм Ахметзянов объяснит, почему «друзья не позволяют друзьям делать самописную систему фича-флагов». 🤹 Реализация нейронной сети на PHP Алексей Нечаев покажет, как создать нейронку, не написав ни строчки кода на Python! 🎤 Открытый микрофон (только офлайн) В конце митапа любой участник сможет на 5-10 минут завладеть флипчартом и поделиться насущной проблемой, элегантным решением или историей про то, как уронил прод накануне в пятницу. Пыхап пройдёт там же — в уютном лофте «Событие» на Таганке. В этот раз решили попробовать субботу, поэтому собираемся пораньше, в 16:30. Регистрация откроется на канале Пых в следующий понедельник в 15:00, не пропустите. Входной билет — 500₽. Ну и конечно же митап будет транслироваться на YouTube и VK Видео с записью. Спонсор второго Пыхапа — PremiumBonus. PremiumBonus — эволюция управления клиентским опытом. Весь спектр цифровых маркетинговых инструментов для выстраивания эффективной коммуникации с клиентами. Уникальные продукты на основе самых актуальных современных трендов, таких как предиктивная аналитика и автоматизация маркетинговых акций с помощью ИИ.

  • Доброй ночи и С Новым Годом! Желаю всем в новом 2025 году счастья и благополучия! Достижение поставленных целей, поменьше багов и перейти поскорей на PHP 8.4 🐘 Желаю быть оптимистично настроенными, не выгорать и не терять бодрости духа и ... слонов, как я, куда-то задевал своего, поэтому фоточка с прошлого года 😄 С Новым Годом, друзья!

The Fly's PHP - Делаем из Мухи Слона — tgindex