TGViewer
Channel Public Channel
PHP Digest

PHP Digest

@phpdigest

PHP Дайджест

Новости, материалы и инструменты из мира PHP — раз в месяц.

Вопросы, замечания, предложения: @pronskiy
Subscribers
8.18K
Photos
62
Videos
3
Links
307

Showing posts older than #299 · Back to latest

Older Posts 20 shown
Post #298 13K
Post #297 12.2K
Дайджест PHP – Сентябрь 2022

Подборка свежих новостей, инструментов, видео и материалов из мира PHP. Приятного чтения!

⚡️ НОВОСТИ

🔹 Вышел PHP 8.2 RC 3

Очередная версия RC была выпущена по расписанию. RC4 – ожидается 13 октября.

Подробно про все изменения в PHP 8.2 можно прочитать на сайтах PHP.Watch или stitcher.io.

🔹 Вышли PHP 7.4.32, PHP 8.0.24 и PHP 8.1.11

❗️Это выпуски с исправлением проблем безопасности. Всем пользователям рекомендуется обновиться.

🔹 Доступен PhpStorm 2022.3 EAP!

Вот что вы уже можете попробовать в рамках программы раннего доступа PhpStorm:
- Новой интерфейс (пока в бета-режиме, но доступен всем по опции в настройках)
- Полная поддержка PHP 8.2
- Предварительный просмотр быстрых исправлений
- И многое другое

🐘 ЯДРО PHP

Большинство новостей ядра подробно освещаются в серии PHP Core Roundup от PHP Foundation, поэтому лишь кратко пробежимся:

📊 RFC: json_validate #PHP 8.3

В этом RFC Juan Carlos Morales предлагает добавить новую функцию json_validate(), которая проверяет, является ли строка корректным JSON.

🤔 RFC: Improve unserialize() error handling #PHP 8.3

Tim Düsterhus предлагает бросать исключение UnserializationFailedException в случае ошибки сериализации.

🤔 RFC: StreamWrapper Support for glob() #PHP 8.3

Timmy Almroth предлагает реализовать в StreamWrappers поддержку функции glob().

🔹RFC: Deprecations for PHP 8.3

RFC со списком того, что предлагается объявить устаревшими в PHP 8.3 и удалить в PHP 9.

🛠 ИНСТРУМЕНТЫ

🔹play.phpsandbox.io – Попробуйте пакеты Composer прямо в браузере, ничего не устанавливая.

🔹cspray/annotated-container – Dependency Injection framework для конфигурирования контейнера PSR-11 с атрибутами.

🔹openai-php/client – Клиент для API OpenAI.
Существует также orhanerday/open-ai, если вам нужна альтернатива для доступа к API OpenAI GPT-3.

⚫️ SYMFONY

🔹Вышел symfony/webpack-encore 4.0.0. Некоторые зависимости (например, webpack) были перенесены из Encore в проект.

🔹StenopePHP/Stenope – Инструмент создания статических веб-сайтов для Symfony. Вы можете создать полноценное приложение Symfony, а затем развернуть его в виде статической страницы в любом удобном для вас месте.

🔴 LARAVEL

🔹ksassnowski/venture 4.0.0 – Пакет для создания и управления сложными асинхронными рабочими процессами в приложениях Laravel.

🔹spatie/laravel-model-info – Пакет для получения информации обо всех моделях.

🔹YorCreative/Laravel-Scrubber – Пакет для очистки конфиденциальной информации, нарушающей политики операционной безопасности, от случайной или неслучайной утечки разработчиками. Подробнее об использовании.

👨‍🏫 Laracon Online – Видеозаписи всех докладов с онлайн конференции по Laravel.
Тейлор представил Laravel Bootcamp – новый обучающий сайт по Laravel.

🟢 ДРУГИЕ ФРЕЙМВОРКИ

🔹Вышел spiral/framework 3.0.0 – Большое обновление фреймворка от создателей RoadRunner.

🔹Вышел Phalcon PHP Framework 5.0 – Подробный список нововведений приведён в документации.

🔹Вышел api-platform/api-platform 3.0 – Фреймворк построен поверх Symfony и позволяет создавать REST и GraphQL API и многое другое.

🔹Appwrite 1.0 – Крупный стабильный выпуск решения с открытым исходным кодом backend-as-a-service.

🔹Вышли обновления пакетов Yii Strings 2.1.0, Yii Middleware Dispatcher 3.0.0, Yii Profiler 2.0.0, Yii Message Translator 1.1.1, Yii Cache File Handler 2.0.1.
Более подробно новости Yii освещаются в канале «Хроники Yii3».

📄 СТАТЬИ

🔹Как мы решаем проблемы со склонением слов для задач seo-оптимизации с помощью phpMorphy от Александра Корабельникова.

🔹PHP: атрибуты vs аннотации: оптимизируем метадату Doctrine от Романа Ушакова.

🔹Выходя за рамки ООП. Разработка расширений для PHP на PHP от Александра Макарова.



Ещё больше новостей и ссылок в сентябрьском выпуске PHP Annotated от JetBrains 💜

🎬 Дайджест PHP в видео-формате на канале CutCode
  • 👍 102
  • 🔥 33
Post #296 12.7K
Post #294 14.5K
Разработка Yii3, 29 июля — 4 августа

⚡️Обновления

Yii Debug, Yii Debug API, Yii Debug Viewer
• Добавлена возможность исключать консольные команды из отслеживания.
• Реализован сбор информации об очередях.
• Реализована базовая версия инспектора приложения. Сейчас инспектор позволяет посмотреть конфигурации объектов контейнера и параметры конфигурации приложения, но в дальнейшем планируется расширить его возможности (просмотр дампа любого объекта из контейнера, просмотр конфигурации окружений, запуск консольных утилит psalm, phpunit, deptrac и т. д.)

Yii Cycle ORM
• Ветка с поддержкой Cycle ORM 2 стала основной.
• Добавлена поддержка psr/simple-cache версий ^2.0 и ^3.0.
• Добавлен генератор, обрабатывающий наследование таблиц.

Демо веб-приложения
• В LocaleMiddleware добавлена поддержка HTTP (ранее корректно работало только с HTTPS).
• Улучшен вывод консольной команды router/list.

Демо API-приложения
• Добавлен дебаггер.


Новые пакеты

yiisoft/app-console — шаблон для консольного приложения.


🎁 Релизы

Yii Console 1.3.0
• Событие запуска приложения теперь может содержать имя запускаемой консольной команды.

Yii Console Runner 1.1.0
• Реализована передача имени запускаемой команды в событие запуска приложения.

Yii Runner 1.2.0
• Объект с конфигурацией контейнера добавлен в сам контейнер. Это потребовалось для реализации инспектора в дебаггере.

Yii Swagger 1.2.2
• Добавлена поддержка yiisoft/cache версии ^2.0.


Сводка подготовлена по информации канала «Хроники Yii3».
  • 🔥 31
  • 👍 25
  • 😢 7
Post #293 9.19K

Forwarded from Пых (Валентин Удальцов)

🏫 Мой продвинутый курс по PHP

Я уже пару лет мечтаю о том, чтобы масштабно и комплексно поделиться знаниями, и наконец-то мне представилась возможность записать свой продвинутый курс по PHP! Огромное спасибо Loftschool за предложение посотрудничать!

Осенью мы начнём работу над курсом, а пока приглашаю вас посмотреть мастер-класс про паттерн middleware, который я записал в качестве пролога.

https://youtu.be/yMrbatAM3bw
YouTube Готовим Middleware в PHP В этом мастер-классе Валентин Удальцов расскажет о middleware как об архитектурном шаблоне и ООП-паттерне в контексте PHP. Вы узнаете, как выглядит контракт middleware, как построить пайплайн для запуска цепочки обработчиков, какие преимущества имеет middleware…
  • 🔥 44
  • 👍 18
  • 🤔 3
  • 😢 3
Post #289 9.48K
Разработка Yii3, 22-28 июля

Сделали первый стабильный релиз Yii Sentry. В демо API-приложения добавили пример использования очередей Yii Queue. Продолжаем активную работу над валидатором и DB-пакетами и дебаггером.

🎁 Yii Sentry 1.0.0 — интеграция с Sentry, сервисом для сбора и агрегации логов, и другими совместимыми с Sentry API инструментами (например, GlitchTip).

🎁 Yii View 6.0.0
🎁 Yii View Extension 4.0.0
Доработали ViewInterface: добавили метод, позволяющий задать корневую директорию с представлениями, и переименовали *language методы в *locale.

🎁 Yii Mailer Library 4.0.0
🎁 Yii Mailer Symfony Mailer Extension 2.0.0
Добавили метод MailerInterface::withLocale() для установки локали и поддержку 6й версии symfony/mailer.

🎁 Yii Console 1.2.0
Добавили возможность конфигурации команды serve (адрес, порт, корневая директория и точка входа).

🎁 Yii Cache File Handler 2.0.0
Подняли версию PHP до ^8.0, а версию PSR-интерфейсов psr/simple-cache до ^2.0|^3.0.



За подборку спасибо Сергею Предводителеву 💙
  • 👍 68
  • 🤔 11
  • 🔥 10
  • 😢 3
Post #287 10.4K
Дерик (автор Xdebug) проводит опрос о дальнейшем развитии DateTime:
https://twitter.com/derickr/status/1551611856007069696

Перевод: Сделать класс DateTime изменяемым было одной из самых больших ошибок в API модуля Date/Time.
Я думаю изменить DateTime так, чтобы он был иммутабельным по умолчанию в PHP 9 и отказаться от класса DateTimeImmutable (или сделать псевдонимом).
Вероятно, это сломает чей-то код.
Twitter Making PHP's DateTime class mutable was one of the bigger mistakes of the Date/Time APIs. I'm considering to change DateTime to be immutable by default in PHP 9, and to drop DateTimeImmutable altogether (or make it an alias). This is likely going to break…
  • 👍 31
  • 🤔 1
  • 😢 1
Post #286 9.52K
Поддержка Laravel 8

В Laravel 8 теперь будут исправления только связанные с безопасностью. Полная поддержка прекратится 24 января 2023 года, рекомендуется обновиться до 9 версии.

#Laravel
  • 👍 32
  • 😢 9
Post #285 9.46K
Что дальше с PHP Дайджестом

PHP Дайджест на Хабре я вел 9 лет и 5 месяцев. Вот так выглядел первый выпуск: https://habr.com/ru/company/zfort/blog/153769/

Война в Украине и бомбардировки Харькова, где я жил, сильно поменяли жизнь. Пока писать в прежнем формате нет желания и возможности.

Зато инициативу подхватил Сергей Пантелеев! Все последующие посты на канале PHP Дайджест по умолчанию будут от Сергея. Вот чем занимается Сергей в мире PHP:

🔹 Релиз-менеджер PHP 8.2
🔹 Мейнтейнер русской документации PHP
🔹 Помогает с разработкой сайта thephp.foundation
🔹 Помогает с PHP Annotated
🔹 Один из переводчиков книги Symfony 5: The Fast Track
🔹 Организатор BeerPHP Yaroslavl


Ну а меня можно найти тут:

🔸 Твиттер @pronskiy – пишу только про PHP
🔸 PHP Foundation – в блоге фонда PHP пишу отчеты для спонсоров каждый месяц
🔸 Блог PhpStorm – там выходит PHP Annotated

Всем мира.
  • 👍 306
  • 😢 170
  • 🔥 11
  • 🤔 4
Post #284 19.4K
Друзья, сегодня Юлия Insolita ушла из жизни.

Юля была активным участником нашего PHP-сообщества, помогала со стримами, митапами, конференциями и до последнего дня помогала делать PHP-дайджест.

Последние несколько месяцев Юля боролась с болезнью, но к сожалению победить ее не получилось.
Пусть земля будет Юле пухом.

Друзья, берегите себя и близких, будьте здоровы.
  • 😢 518
  • 👍 3
  • 🤔 2
Post #283 13.1K
PHP Дайджест № 222 (7 – 21 февраля 2022)

Основное из дайджеста в телеграм-формате:

⚡️НОВОСТИ

🔹
PHP 7.4.28, PHP 8.0.16, PHP 8.1.3

Обновления актуальных веток PHP с фиксом уязвимости в php_filter_float(), а в 8.0 и 8.1 еще с пачкой других фиксов.

Для PHP 7.3 обновления уже не выходят, даже если обнаружены проблемы безопасности. И хотя данной уязвимости PHP 7.3 не подвержена, тем не менее если вы все еще используете эту версию, то лучше запланировать обновление в ближайшее время.


🔹 Ubuntu 22.04 LTS выйдет с PHP 8.1

Очередной релиз популярного Linux дистрибутива выйдет 21 апреля с предустановленным PHP версии 8.1.

В связи с этим предлагается поднять минимальную версию PHP в следующем релизе Symfony 6.1. А для Drupal 10 это уже сделали.


🔹 PhpStorm 2022.1 EAP

Продолжается программа раннего доступа первого мажорного релиза IDE в этом году. Сделали поддержку многострочных и вложенных аннотаций array shape! Можно использовать как в виде PHPDoc, так и в виде атрибута #[ArrayShape].


🔹 [RFC] Redacting parameters in back traces

На голосовании предложение добавить аттрибут #[SensitiveParameter] для предотвращения отображения конфиденциальныx данных в отладочных логах.


🔹 [RFC] Undefined Variable Error Promotion

Автор ранее предложил в PHP 9 перевести многие оставшиеся предупреждения (WARNING) в полноценные исключения. Такое уже раньше делали в PHP 8.0.

Ну а начать решил с использования необъявленных переменных. Сейчас в этом случае бросается Warning и используется значение null.


🔹 [RFC] Allow null and false as stand-alone types

Предлагается добавить возможность использовать null и false в декларациях типов.
Во-первых, это недостающие куски для полноты системы типов в PHP — есть mixed, добавили never, объединения и пересечения, не хватает юнит-типа.
Во-вторых, такие типы позволят покрыть некоторые граничные случаи и улучшить статический анализ.


🔹 Вышел Laravel 9

Есть отличные обзоры:
📺 Короткий видеообзор на русском от CutCode
🇷🇺 9 интересных новшеств в Laravel 9 — В тексте
📺 Laracasts: What's New in Laravel 9 — Подробно на видео


🔹 Shopware получили $100 млн инвестиций от PayPal и Carlyle

Открытая е-commerce платформа на базе Symfony поднимает хорошие деньги, пока кто-то говорит, что PHP мертв. Ранее в 2020 $130 млн получили Spryker — другая e-com платформа на PHP.
Обе компании, кстати, поддерживают фонд PHP.


🌀 РАЗНОЕ

🔸 Brent Roose: Service locator: an anti-pattern

🔸 Как помочь с релизом Yii 3 — Статья Виктора Бабанова из core-команды Yii3 подробно рассказывает как помочь фреймворку кодом, даже если вы никогда раньше этого не делали.

🔸Пых: fromName для enum — Про методы fromName и tryFromName для получения перечисления любого типа по его имени ($name).

--

👉 Больше новостей и ссылок в полном дайджесте на Хабре, а также инструменты и ссылки по фреймворкам.

Дайджест подготовлен совместно с Insolita.

🐘
  • 👍 51
  • 🤔 1
Post #281 10.1K

Forwarded from Пых (Валентин Удальцов)

🤝 PHP Foundation

С этого дня я ежемесячно перевожу $50 в фонд PHP.

PHP Foundation — это некоммерческая организация, миссия которой — обеспечить долгосрочное развитие PHP. Главный идеолог фонда — Роман Пронский, автор PHP Digest. Запуск проекта стал совместной инициативой JetBrains, Laravel, Symfony, Zend и других компаний.

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

Больше о фонде:
216-ый выпуск PHP Дайджеста,
стрим к выходу PHP 8.1,
блог JetBrains,
Twitter проекта.

https://opencollective.com/phpfoundation
  • 🔥 29
  • 👍 9
  • 🤔 1
Post #280 9.52K
Post #279 12.8K
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →