Статьи
PHP 8.5: Новая константа PHP_BUILD_PROVIDER
В PHP 8.5 появилась новая глобальная константа `PHP_BUILD_PROVIDER`, отображающая информацию о поставщике сборки PHP. Она получает значение из переменной окружения, заданной при компиляции, что позволяет разработчикам получать контекстные данные о сборке приложения. Ранее эта информация была доступна только через вывод `phpinfo()`, теперь её можно использовать непосредственно в коде.PHP 8.5: Новые функции `get_exception_handler` и `get_error_handler`
В PHP 8.5 появились две важные функции для работы с обработчиками ошибок и исключений — `get_error_handler` и `get_exception_handler`. Эти нововведения решают проблему отсутствия прямого доступа к информации о текущих обработчиках, ранее требовавшая использования обходных решений.PHP 8.5: Поддержка трассировки стека для фатальных ошибок PHP
В PHP 8.5 появилась функция трассировки стека для фатальных ошибок, упрощающая процесс отладки приложений. Теперь разработчики могут видеть полный путь выполнения кода до момента возникновения критической ошибки, что существенно ускоряет поиск и устранение проблем. В статье рассматривается новая INI-директива `fatal_error_backtraces`, ограничения и взаимодействие с существующими инструментами обработки ошибок.PHP 8.5: новая функция locale_is_right_to_left и Locale::isRightToLeft
В PHP 8.5 появилось обновление для работы с многоязычными приложениями: функция `locale_is_right_to_left` и метод `Locale::isRightToLeft`, позволяющие разработчикам автоматически определять языки с написанием справа налево, включая арабский и иврит. Эти инструменты значительно упрощают локализацию приложений и обеспечивают корректное отображение текста на языках с RTL написанием письма.PHP 8.5: CLI: php --ini=diff отображает нестандартные INI директивы
Отладка конфигурации PHP стала проще: в PHP 8.5 появилась команда `php --ini=diff`. Она одним вызовом показывает все изменённые INI-настройки, избавляя от ручного сравнения конфигов или поиска в `phpinfo()`.PHP 8.5: Intl: новый класс IntlListFormatter
Новый классIntlListFormatter в PHP 8.5 упрощает форматирование списков на разных языках. Синтаксис, примеры и таблицы локализаций внутри.PHP 8.5: новая Curl-функция curl_multi_get_handles — как она работает
В PHP 8.5 расширение cURL получило улучшение, которое делает работу с многопоточными запросами проще. Функцияcurl_multi_get_handles позволяет напрямую получить список всех добавленных CurlHandle, чего раньше катастрофически не хватало.PHP 8.5: Новая INI-директива max_memory_limit
В PHP 8.5 разработчики получили новый инструмент управления ограничениями памяти — INI-директиваmax_memory_limit. Она позволяет задать верхний предел, выше которого значение memory_limit задать невозможно. Это упрощает контроль ресурсов в продакшене и предотвращает неконтролируемый рост потребления памяти.PHP 8.5: новое поведение Filter — исключения при сбоях валидации
В PHP 8.5 функции filter_* могут выбрасывать исключения при ошибках валидации. Рассказываем, как работает новый флаг FILTER_THROW_ON_FAILURE и как использовать его на практике.PHP 8.5: Оператор pipe (|>) — примеры, ограничения, руководство
В PHP 8.5 добавлен новый оператор, оператор pipe (|>), позволяющий связывать несколько вызываемых объектов слева направо, принимая возвращаемое значение левого вызываемого объекта и передавая его вправо.Цикл релизов PHP: обновления, сроки поддержки и изменения
Цикл релизов PHP изменился: активная поддержка всех текущих и будущих версий PHP продлена с одного года до двух лет, а сроки поддержки привязаны к концу календарного года.Новые сообщения об ошибках в PHP 8.5
Разбираем новые сообщения об ошибках в PHP 8.5: pipe-оператор, deprecated-поведение, проблемы с массивами, типами и глобальными константами. Как исправить ошибки и подготовить проект к миграции.Руководство по установке и обновлению PHP 8.5 для Debian и Ubuntu
Полное руководство по установке и обновлению PHP 8.5 в Ubuntu и Debian: подключение репозитория Ondřej, установка PHP-FPM и расширений, миграция конфигурации, удаление старых версий и работа нескольких версий PHP одновременно.Что следует избегать в JavaScript
Распространённые ошибки и неверные подходы среди неопытных фронтенд и бэкенд-разработчиков, которые могут привести к появлению багов или проблемам с отказоустойчивостью.ECMAScript 2025: Что нового
25 июня 2025 года 129-я Генеральная ассамблея Ecma утвердила спецификацию языка ECMAScript 2025, а это значит, что теперь он официально стал стандартом.Всё, что появилось в PHP 8.5
Как и каждый год, в этом году вышла новая версия PHP, а именно PHP 8.5. Это минорная версия в линейке PHP 8, и она вышла 20 ноября этого года. Давайте поговорим обо всём, что было добавлено в PHP 8.5 на данный момент.Понимание рекурсии в JavaScript
Разберитесь в рекурсии на примерах и узнайте, как использовать рекурсивные функции в JavaScript.Статистика версий PHP: Июнь 2025
Использование PHP в июне 2025 годаАгрегатные функции SQL — примеры и использование
В статье мы рассмотрим наиболее часто используемые агрегатные функции SQL, их синтаксис, практические примеры и способы оптимального использования в запросах.Зачем нужны логические свойства CSS
Сегодня я хотел бы поговорить о логических свойствах CSS — новом (и, возможно, более эффективном) способе определения свойств, которые по своей природе являются направленными.CSS if(): новая функция условной логики доступна в Chrome 137+
CSS с каждым днём превращается в настоящий «язык программирования». С появлением новых возможностей, таких как CSS переменные, функцияcalc(), псевдоклассы :has() и :is(), а также универсальные @media запросы, CSS упрощает создание сложных стилей и макетов.Мемоизация кэша в Laravel
Как использовать мемоизацию кэша в Laravel для повышения производительности и сокращения сетевых обращений к Redis, Memcached и другим хранилищам.Что такое this в JavaScript
Во второй части серии Mat Marquis объясняет, что такоеthis на самом деле, и помогает разобраться, чему он соответствует, исходя из различных контекстов.Error.isError(): Лучший способ проверки типов ошибки в JavaScript
Руководство по новому методуError.isError() в JavaScript: почему он лучше instanceof, как решает проблемы кросс-контекстных ошибок и типизации в TypeScript.