uk
Feedback
PHP Digest

PHP Digest

Відкрити в Telegram

PHP Дайджест Новости, материалы и инструменты из мира PHP — раз в месяц. Вопросы, замечания, предложения: @pronskiy

Показати більше
8 309
Підписники
Немає даних24 години
-117 днів
+530 день
Архів дописів
Если думаете, что вам нечего рассказать на конференции, то сильно ошибаетесь! Из каждого года опыта работы можно вытянуть по идее, а то и больше, и они будут интересны многим. В ближайшие четверг и понедельник ребята из программного комитета PHP Russia готовы созвониться со всеми желающими и за 15 минут помочь найти или докрутить тему для доклада на митапе, конференции или статьи. 🔗 Записаться можно здесь https://forms.gle/7mvqDwgE196CH7My9 Формат протестировали на 10 добровольцах и нашли по 2-3 темы для девяти из них. Если же тема готова и помощь не нужна, то тогда отправляйте заявку на сайте https://phprussia.ru/moscow/2020

Открытое собеседование по PHP | Эпизод #2 — Прием заявок Пилотный выпуск открытого собеседования зашел отлично, и мы получили много ценных отзывов. Спасибо всем, кто был с нами на стриме и задавал вопросы! Если вдруг вы не видели первый выпуск, то вот запись https://www.youtube.com/watch?v=FQNd9W3nb3A Тем временем начинаем подготовку второго выпуска! Требования для участия не поменялись: • уровень middle/senior; • PHP 7.x, PSR; • ООП, SOLID, coupling/cohesion, вот это все; • тестирование, PHPUnit; • желателен опыт с Symfony 4/5; • SQL, желательно PostgreSQL; • представление о современных трендах в архитектуре приложений. Темы будут ± те же, а вот вопросы подготовим новые, без Psalm 🙂 Заявку на участие можно отправить до 27 августа через форму: https://forms.gle/ES3nXiwf4ycosGEy9. Вопросы в личку: @vudaltsov, @pronskiy.

PHP-Дайджест № 186 PHP 8 Beta 1, снова о синтаксисе атрибутов в PHP 8: #[Attr] vs @[Attr], предложение по синтаксису для BigInt, обзоры PHP 8 и много других видео, инструменты, стримы, подкасты. https://habr.com/p/515416/

Финальное голосование по синтаксису атрибутов в PHP 8 https://wiki.php.net/rfc/shorter_attribute_syntax_change К рассматриваемым раньше @@Attr, #[Attr], <<Attr>> добавился еще вариант @[Attr]. Голосование проходит по системе STV. Это значит, что каждый ранжирует синтаксисы по предпочтению. Если я подсчитал все правильно, то в конечном результате на данный момент побеждает все-таки #[Attr]. https://gist.github.com/pronskiy/f2240b300e60cf38db1da2a94667ff6e#gistcomment-3415687 И дельное замечание от Джорди (Composer) о том, что переживать насчет синтаксиса не стоит. Раньше уже было такое, например, при выборе разделителя для неймспесов https://wiki.php.net/rfc/namespaceseparator. Тогда в 2008 в качестве альтернативы привычному сейчас \ рассматривались: **, ^^, %%, :>, ::: Upd: Benjamin Eberlei пишет, что изначально большинство хотели ::, потому что такой синтаксис в C++ и проблема с этим синтаксисом была найдена позже, когда уже имелась реализация.

Приведение типов в PHP во многих случаях работает по принципу «лучше хоть как-то, чем никак». C последними улучшениями от Никиты все становится предсказуемее, и тем не менее код ниже вполне будет работать, хоть и не так, как , наверное, ожидалось.
debug=_0 // .env
(bool) getenv('debug'); // true!

Чтобы избавиться от таких проблем, можно взять filter_var с его флагами и бросать свой Exception. Или можно взять обертку над значениями zakirullin/mess:
(new Mess(getenv('debug')))->getAsBool();
// _0 => UncastableValueException

В Mess можно скармливать массивы/примитивы:
$mess = new Mess($apiResponse);
$profile = new Profile(
    $mess['profile']['name']->getString(),
    $mess['votes']->getInt(),
    $mess['is_deleted']->getBool()
)
// Dealing with typed ValueObject

PHP-Дайджест № 185 PHP 8 Alpha 3, PhpStorm 2020.2, новый оператор ?->, снова обсуждение синтаксиса атрибутов и другие новости PHP Internals, обзор системы типов в PHP, порция полезных инструментов, видео, стримы. https://habr.com/p/513558/

Релиз PhpStorm 2020.2 Из наиболее заметного в этом мажорном обновлении: ▪️ PHP 8 union types ▪️ Новый движок потока управления для PHP ▪️ Полная поддержка пул-реквестов GitHub ▪️ Новый рефакторинг Extract Class ▪️ Поддержка OpenAPI (с плагином) Подробный разбор этих и всех других новых фич на русском: https://habr.com/ru/company/JetBrains/blog/513250/

Какой синтаксис атрибутов в PHP поддерживаете?
Anonymous voting

#RFC И снова о синтаксисе атрибутов в PHP 8 https://wiki.php.net/rfc/shorter_attribute_syntax_change Сначала Benjamin Eberlei подготовил детальный RFC по атрибутам и предложил синтаксис <<Attribute>>. Предложение прошло, но позже после споров предложен другой RFC с тремя вариантами синтаксиса на голосовании: <<>>, #[] и @@. Победил вариант @@, видимо, как максимально близкий к тегам PHPDoc и аннотациям в Java. Но автор этого RFC умолчал о проблеме с парсером и о хаке, который он применил, чтоб обойти проблему. И вот теперь Derick Rethans автор Xdebug написал письмо в Internals, что синтаксис @@ ужасен вот почему: ▪️ Конфликт с парсером. ▪️ Большая вероятность проблем с парсингом в будущем. ▪️ Отсутствие символа в конце атрибута (с ним проще искать и проще для инструментов вроде PHPCS). ▪️ Синтаксис не используется ни в одном другом языке. ▪️ Оператор @ никогда не уйдет из PHP, а значит и атрибуты из @@ не станут @. По следам этого письма и подготовили новый RFC, который предлагает использовать синтаксис #[ ] как в Rust.

#Cтрим об утечках памяти в PHP В долговыполняющихся приложениях (асинхронные, демоны, воркеры очередей, процессинг) на PHP , да и на любом другом языке, можно столкнуться с утечками памяти. Валентин на стриме расскажет об опыте поиска проблемы, инструментах для анализа и о том, как фиксил. Все это на примере утечки, обнаруженной в Symfony–компоненте. Среда, 18:00 Москва/Киев/Минск, канал PHP Point. https://www.youtube.com/watch?v=NNMp-97rk9c

Предложение принято. В PHP 8 будут именованные аргументы! 🎉

PHP-Дайджест № 184 Что будет с поддержкой PHP на Windows, PHP 8 Alpha 2, ReactPHP — официально продакшн-реди, 2 новых RFC предложения и 6 на голосовании, порция полезных инструментов, статьи, видео и подкасты. https://habr.com/p/511686/

🔈 Нужны ли Unit-тесты — Владимир Янц в подкасте «Между Скобок» https://soundcloud.com/between-braces/10-vladimir-yants-nuzhno-li-unit-testirovanie Коротко и по делу о ключевых аспектах тестирования PHP-приложений. В тему пост Владимира о том, как устроено тестирование монолита в Badoo.

Стартуем открытое собеседование прямо сейчас. Update: стрим закончился, доступна запись. https://www.youtube.com/watch?v=FQNd9W3nb3A

Открытое собеседование № 1 Cтрим в четверг, 16 июля, в 17:00 по Москве/Киеву/Минску https://www.youtube.com/watch?v=FQNd9W3nb3A Валентин @phpyh и я @phpdigest совместно проведём открытое собеседование с Патриком Фельдешем. Начнём со знакомства, перейдём к PHP, пробежимся по SOLID и закончим где-то в архитектуре и вопросами из чата. В конце расскажем, что было хорошо, а что не очень, и прошел ли бы кандидат реальное собеседование. Трансляция будет на новом YouTube канале PHP Point — подписывайтесь, чтоб не пропустить следующие проекты.

PHP-Дайджест № 183 Все про PHP 8: первая альфа, новое выражение match, баг в синтаксисе @@ для атрибутов, реальные бенчмарки JIT, 4 новых предложения. И, как всегда, инструменты, статьи, видео и подкасты. https://habr.com/p/509738/

Стрим про код-ревью с камрадами Макаровым, Буркалевым, Жуком и Моревым в эфире прямо сейчас. Upd: закончился, доступна запись. https://www.youtube.com/watch?v=JP7lppzWaLg

Открытое собеседование — ищем участников Бывало, засидишься на одном месте и не знаешь, актуален ли ты еще на рынке... Хотя бы какие там тренды? Что спрашивают-то сейчас вообще на собеседованиях? Вот и решили с Валентином Удальцовым провести публичное онлайн-собеседование с вопросами на актуальные темы мира PHP. Трудоустройство не гарантируем, скорее это возможность рассказать о себе, проверить знания, узнать что-то новое да и просто хорошо провести время. Собеседование будет проходить в режиме стрима в теплой обстановке, примерно как на видео, только Валентин будет без усов. Требования для участия: • уровень middle/senior; • PHP 7.x, Composer, PSR; • ООП, SOLID, coupling/cohesion, вот это все; • тестирование, PHPUnit; • желателен опыт с Symfony 4/5; • SQL, желательно PostgreSQL; • представление о современных трендах в архитектуре приложений. Заявки на участие можно отправить до 8 июля через форму: https://forms.gle/ES3nXiwf4ycosGEy9. Вопросы в личку: @vudaltsov, @pronskiy.

Сегодня в 17:00 по UTC+3 (Киев/Москва/Минск) будем общаться в формате стрима с Антоном Моревым про PHP, PhpStorm, дайджесты и всякое разное. https://www.youtube.com/watch?v=KvTQWv0phgE

Видеообзор истории PHP от Пятиминутки PHP https://www.youtube.com/watch?v=FZ-3Qc89PEY