TGViewer
The Fly's PHP - Делаем из Мухи Слона The Fly's PHP - Делаем из Мухи Слона @flyphp · 414 subscribers
Post #100 674
Всем привет!

Я никуда не пропадал 😄 - работы много, пока очухаюсь и вижу что ребята из ру сообществ 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 много что пробовали запихать)
  • 🔥 11
  • ❤ 3
  • 🎄 3
More from @flyphp
  1. Sep 10, 2026🐘 Пыхник’26 - целая неделя PHP! С 28 сентября по 2 октября собираемся на Пыхнике’26 - онл…
  2. Sep 10, 2026Post #105
  3. Jul 8, 2026Первый официальный State of PHP опрос открыт: https://jb.gg/php-survey-2026 В сообществе у…
  4. Jun 2, 2026Вышел TrueAsync 0.7.0, краеугольная версия, которая определяет необходимый API для асинхро…
  5. May 23, 2026В конце 2025 года проводился ежегодный опрос русскоязычного PHP-сообщества. Результаты опр…
  6. Jan 15, 2026🚀 Большой ежегодный опрос по PHP 🐘 🤘 Присоединяйся и помогай комьюнити становиться толь…
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 →