[{"data":1,"prerenderedAt":139},["ShallowReactive",2],{"$f7AVZHmPutZ23_8XKkLbDtEszKCuiY3yPjIDp9eRXGag":3,"$f_kpFJOOQ1xBiOv6Vq5FuMWU7KGsmn3kmZaeVpwR_yZM":5,"$fBBQ5ulyG5jVWbIBJe3r8F-kTKQKf1scMJiu0B6qzX5k":113,"$fDnh3rRQGwQ99sMxdRjtiXB5QfI0Mhkmw8jy1F8RprUE":115},{"data":4},[],{"data":6,"meta":109},[7],{"id":8,"documentId":9,"title":10,"seo_title":11,"summary":12,"seo_description":13,"slug":14,"published_date":15,"body":16,"content":17,"createdAt":30,"updatedAt":31,"publishedAt":32,"blogauthor":33,"cover":55,"categories":98},346,"lhti4xw476nf25v1qburi3pg","PHP 8.6: дата релиза, предстоящие возможности и статус RFC","PHP 8.6: дата релиза и новые возможности","PHP 8.6, скорее всего, выйдет 19 или 26 ноября 2026 года. Разбираем принятые RFC и предложения на обсуждении: от clamp() и PFA до True Async и отказа от 32-битных сборок.","PHP 8.6 ожидается в ноябре 2026 года. Обзор RFC: принятые частичное применение функций и clamp(), а также True Async, контекст-менеджеры и другие предложения.","php-8-6-data-reliza-predstoyashhie-vozmozhnosti-i-status-rfc","2026-06-30","Уже много лет PHP выпускает мажорные версии примерно в конце ноября. PHP 8.5 вышел 20 ноября 2025 года, а PHP 8.4.0 — в конце ноября 2024 года. Если проект сохранит тот же ритм, PHP 8.6 с наибольшей вероятностью выйдет в третью неделю ноября 2026 года. Разумно ожидать релиз в четверг (как и у последних мажорных версий), так что ориентируйтесь примерно на 19 ноября 2026 года или 26 ноября 2026 года, а точная дата будет зависеть от того, сколько потребуется RC.\n\n\u003Ch3 id=\"prinyato-ili-uzhe-realizuetsya-k-sleduyushhemu-relizu\">Принято или уже реализуется к следующему релизу\u003C\u002Fh3>\n\n#### Частичное применение функций (PFA, v2). Статус: Принят\n\nЭто нововведение добавляет синтаксис на основе плейсхолдеров для частичного применения аргументов к любому вызываемому объекту (callable). Если вы вызываете функцию и оставляете один или несколько аргументов плейсхолдерами, PHP возвращает замыкание (`Closure`), которое запоминает то, что вы уже передали. Позже это замыкание можно вызвать, передав недостающие значения.\n\n```php\n\u003C?php\n\nfunction add(int $a, int $b, int $c): int\n{\n    return $a + $b + $c;\n}\n\n$add10AndX = add(10, ?, 5);  \u002F\u002F возвращает Closure: fn(int $b): int\n\necho $add10AndX(3);          \u002F\u002F 18\n```\n\nЗдесь создаётся замыкание, потому что `?` помечает недостающий аргумент. `$add10AndX` — ключевая переменная: она хранит вызываемый объект, который можно использовать повторно. Если у callable строгие типы параметров, замыкание их сохраняет, так что вы по-прежнему будете видеть корректные ошибки типов.\n\nОсобенно ярко это проявляется в коде, насыщенном колбэками.\n\n```php\n\u003C?php\n\n$strings = ['hello world', 'hello php'];\n\n$replaceHello = str_replace('hello', 'hi', ?);\n\n$result = array_map($replaceHello, $strings);\n\nvar_dump($result);\n```\n\n`str_replace('hello', 'hi', ?)` возвращает замыкание, которое ожидает третий аргумент. Это замыкание можно напрямую передать в `array_map()`.\n\n> Пограничный случай: если вы частично применяете callable, принимающий аргументы по ссылке, точное поведение зависит от итоговых правил RFC, поэтому при работе со ссылками сверяйтесь с RFC.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fpartial_function_application_v2](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fpartial_function_application_v2)\n\n#### clamp(). Статус: Принят\n\nПредлагается нативная функция `clamp()`, которая удерживает значение в диапазоне min\u002Fmax. Если значение меньше `min`, вы получаете `min`. Если больше `max` — получаете `max`.\n\n```php\n\u003C?php\n\n$percent = 140;\n\necho clamp($percent, 0, 100); \u002F\u002F 100\n```\n\n`$percent` — ваше входное значение. `0` и `100` — границы, которые входят в диапазон. Если вы случайно передадите `min > max`, ожидается, что `clamp()` выбросит `ValueError`, так что не рассчитывайте на молчаливые корректировки.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fclamp_v2](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fclamp_v2)\n\n> Как только PHP 8.6 выйдет в свет, первой российской IDE поддержавшей все нововведения станет [OpenIDE](https:\u002F\u002Fopenide.ru\u002F). Уже сейчас в ней реализована первоклассная поддержка PHP, достаточно установить [одноименный плагин](https:\u002F\u002Fmarketplace.openide.ru\u002Fplugin\u002Fphp-for-openide-beta\u002F424\u002F) из маркетплейса. А поддержка Docker, работа с базами данных и 300+ плагинов в [маркетплейсе](https:\u002F\u002Fmarketplace.openide.ru\u002F) доступны абсолютно бесплатно.\n\n\u003Ch3 id=\"rfc-eshhyo-ne-prinyatye-dlya-php-8-6\">RFC, ещё не принятые для PHP 8.6\u003C\u002Fh3>\n\nВсё в этом разделе пока находится в статусе черновика или на обсуждении, поэтому детали могут измениться, а предложение — быть отклонено. Я описываю, что именно пытается добавить каждый RFC и где это проявится в вашем коде, если предложение пройдёт.\n\n#### func_get_args_by_name(). Статус: На обсуждении\n\nЭтот RFC предлагает новую функцию, которая возвращает аргументы текущей функции, но при этом для именованных аргументов сохраняет имена параметров в качестве ключей массива. В отличие от `func_get_args()`, имена не теряются.\n\n```php\n\u003C?php\n\nfunction greet(string $name, int $age, ...$extra): array\n{\n    return func_get_args_by_name();\n}\n\nvar_dump(greet(name: 'Alice', age: 30, 'x', 'y'));\n```\n\nВозвращаемый массив должен содержать ключи вроде `name` и `age` для именованных аргументов. Дополнительные позиционные аргументы остаются с числовыми ключами. Пограничный случай: если вы передаёте параметр позиционно, он, скорее всего, окажется с числовым ключом, так что не считайте, что все аргументы именованные.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Ffunc_get_args_by_name](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Ffunc_get_args_by_name)\n\n#### Nullable- и non-nullable-операторы приведения типов. Статус: На обсуждении\n\nПредлагаются две новые формы операторов приведения типов:\n\n- `(?type)` — пропускает `null` как `null`, но для не-null-значений по-прежнему выполняет проверку и приведение по правилам слабого приведения параметров (weak mode).\n- `(!type)` — отвергает `null`, а также значения, которые нельзя привести корректно (без ошибок).\n\n```php\n\u003C?php\n\n$value = null;\n\nvar_dump((?int) $value); \u002F\u002F null\n\ntry {\n    var_dump((!int) $value);\n} catch (TypeError $e) {\n    echo $e->getMessage(), \"\\n\";\n}\n```\n\n`(?int)` предназначен для конвейеров, где `null` означает осмысленное отсутствие значения. `(!int)` — для мест, где вам нужен явный отказ вместо молчаливого преобразования.\n\n> Пограничный случай: ключевая часть — это сами правила приведения, и они основаны на правилах слабого приведения параметров (weak mode), а не на сегодняшних очень снисходительных преобразованиях.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fnullable-not-nullable-cast-operator](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fnullable-not-nullable-cast-operator)\n\n#### Депрекация нечётких приведений скаляров. Статус: На обсуждении\n\nЦель этого RFC — пометить устаревшими «нечёткие» приведения, при которых PHP сейчас молча выполняет преобразования с потерями. Классический пример — частично числовая строка, у которой PHP сохраняет числовой префикс и отбрасывает всё остальное.\n\n```php\n\u003C?php\n\n$raw = \"123abc\";\n\n\u002F\u002F Сегодня это превращается в 123.\n\u002F\u002F По этому RFC ожидается, что такого рода приведение будет вызывать предупреждение об устаревании в PHP 8.6.\n$value = (int) $raw;\n\nvar_dump($value);\n```\n\nЕсли этот RFC пройдёт, практическое решение простое: сначала проверьте, затем приводите.\n\n```php\n\u003C?php\n\n$raw = \"123abc\";\n\nif (!ctype_digit($raw)) {\n    throw new InvalidArgumentException('Expected digits only');\n}\n\n$value = (int) $raw;\n\nvar_dump($value);\n```\n\n`ctype_digit()` строгая функция: она принимает только строки, состоящие из цифр. А значит, отвергает отрицательные числа и пробельные символы, поэтому выбирайте валидатор, соответствующий правилам вашего ввода.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fdeprecate-fuzzy-and-null-casts](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fdeprecate-fuzzy-and-null-casts)\n\n#### Депрекации в PHP 8.6. Статус: Черновик\n\nЭто зонтичный RFC, собирающий депрекации, предложенные для PHP 8.6. Он устроен так, чтобы отдельные депрекации можно было голосовать по отдельности. Среди примеров, перечисленных сейчас, — депрекация передачи объектов в некоторые функции массивов и zlib, а также депрекация `strcoll()` и `SORT_LOCALE_STRING`.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fdeprecations_php_8_6](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fdeprecations_php_8_6)\n\n#### Метод values() для BackedEnum. Статус: На обсуждении\n\nЭтот RFC добавляет к `BackedEnum` метод `values()`, который возвращает все backing-значения в виде индексированного массива. Если вы когда-нибудь писали перечисления и тут же тянулись за `array_map(fn($c) => $c->value, Status::cases())`, это избавит вас от шаблонного кода.\n\n```php\n\u003C?php\n\nenum Status: string\n{\n    case Active = 'active';\n    case Inactive = 'inactive';\n}\n\nvar_dump(Status::values());\n```\n\nЕсли перечисление уже определяет собственный метод `values()`, он должен продолжать работать. Если вы полагаетесь на конкретный порядок сортировки, уточните, что именно гарантирует RFC (обычно это порядок объявления).\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fadd_values_method_to_backed_enum](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fadd_values_method_to_backed_enum)\n\n#### Stringable-перечисления. Статус: На обсуждении\n\nИдея — разрешить `__toString()` у перечислений. Тогда можно было бы напрямую выводить через `echo` отдельный вариант перечисления (case) с собственным форматированием.\n\n```php\n\u003C?php\n\nenum Role: string\n{\n    case Admin = 'admin';\n\n    public function __toString(): string\n    {\n        return $this->value;\n    }\n}\n\necho Role::Admin;\n```\n\nПредложение намеренно узкое: оно про то, чтобы дать перечислениям определять `__toString()`, а не про добавление состояния в перечисления.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fstringable-enums](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fstringable-enums)\n\n#### Улучшения обработки ошибок потоков. Статус: На обсуждении\n\nRFC предлагает сделать ошибки потоков более единообразными и более пригодными для программной обработки. RFC описывает добавление структурированного хранения ошибок, опциональное поведение на основе исключений и согласованные коды ошибок для разных обёрток потоков (stream wrappers). Если вам когда-нибудь приходилось жонглировать предупреждениями, обработчиками ошибок и несогласованными сообщениями от разных обёрток потоков — именно в эту проблему и метит RFC.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fstream_errors](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fstream_errors)\n\n#### API кодирования данных. Статус: На обсуждении\n\nПредлагается стандартный API для кодирования и декодирования распространённых base-кодировок. Мотивация — охватить больше вариантов, чем сегодняшние `base64_encode()` и `base64_decode()`, включая детали семейства RFC 4648 и дополнительные популярные кодировки.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fdata_encoding_api](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fdata_encoding_api)\n\n#### Видимость на уровне пространства имён. Статус: На обсуждении\n\nВводится новый уровень видимости, записываемый как `private(namespace)`, который разрешает доступ изнутри того же пространства имён. Цель — делиться внутренними API между тесно связанными классами, не открывая их как `public` для всего приложения.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fnamespace_visibility](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fnamespace_visibility)\n\n#### PDO::disconnect() и PDO::isConnected(). Статус: На обсуждении\n\nПредлагаются два метода у `PDO`:\n\n- `PDO::disconnect()` — явно закрыть фактическое соединение.\n- `PDO::isConnected()` — узнать, установлено ли соединение в данный момент.\n\nЕсли это пройдёт, у вас появится поддерживаемый способ разорвать соединение, не полагаясь на `unset($pdo)` и тайминги сборки мусора.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fpdo_disconnect](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fpdo_disconnect)\n\n#### Объектно-ориентированный API для curl (v2). Статус: На обсуждении\n\nСегодня в PHP хендлы curl являются объектами, но используются они по-прежнему в основном через процедурные функции. Этот RFC предлагает настоящий объектно-ориентированный API поверх объектов curl — с более чистой структурой и лучшей типобезопасностью.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fcurl_oop_v2](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fcurl_oop_v2)\n\n#### num_available_processors(). Статус: На обсуждении\n\nДобавляется нативная функция для получения числа доступных процессоров. Полезна она прежде всего для планирования параллельной работы — например, при выборе количества воркеров по умолчанию.\n\n```php\n\u003C?php\n\n$workers = num_available_processors() ?? 1;\n\necho \"Workers: {$workers}\\n\";\n```\n\nЗапасной вариант `?? 1` важен, потому что RFC допускает возврат `null` в некоторых ситуациях. Не рассчитывайте, что значение всегда соответствует ограничениям CPU affinity, если только RFC явно этого не гарантирует.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fnum_available_processors](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fnum_available_processors)\n\n#### Отказ от 32-битных сборок. Статус: На обсуждении\n\nПредлагается прекратить официальные 32-битные сборки. Если вы разворачиваете приложение на очень старых системах, это может оказаться ломающим изменением, но большинство современных хостингов и контейнеров уже 64-битные.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fdrop_32bit_support](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fdrop_32bit_support)\n\n#### Поддержка валидации по JSON Schema. Статус: На обсуждении\n\nЭтот RFC добавляет поддержку JSON Schema в расширение JSON. RFC описывает объекты схем (создаваемые из текста схемы) и валидацию, интегрированную с существующей обработкой ошибок JSON. Если сегодня вы валидируете тела API-запросов по схемам с помощью библиотек, это станет стандартным вариантом.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fjson_schema_validation](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fjson_schema_validation)\n\n#### Модификаторы порядка байтов для знаковых целых в pack()\u002Funpack(). Статус: На обсуждении\n\nПредлагается расширить форматные строки `pack()` и `unpack()`, чтобы они поддерживали модификаторы порядка байтов (endianness) для форматов знаковых целых. Цель — избавиться от ручных битовых сдвигов, когда вам нужны знаковые целые в порядке байтов little endian или big endian.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fpack-unpack-endianness-signed-integers-support](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fpack-unpack-endianness-signed-integers-support)\n\n#### Контекст-менеджеры. Статус: На обсуждении\n\nВводится конструкция в стиле `using (...) { ... }`, гарантирующая очистку в конце блока. Основная идея — «получить нечто, выполнить код, всегда освободить» без необходимости вручную писать `try\u002Ffinally` в каждом месте. Примеры в RFC сосредоточены на файловых хендлах и транзакциях.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fcontext-managers](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Fcontext-managers)\n\n#### True Async. Статус: На обсуждении\n\nЭто более масштабное предложение, задающее стандартную модель async и поддержку на уровне движка, к которой смогут подключаться расширения. Оно включает базовый RFC и связанные RFC по областям видимости и engine API. Предложение амбициозное, и это как раз тот случай, когда RFC может растянуться на несколько релизных циклов — если вообще будет принят.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Ftrue_async](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Ftrue_async)\n\n#### Engine API для True Async. Статус: На обсуждении\n\nЭто сопутствующий RFC, посвящённый API на уровне движка для подключаемых планировщиков, реакторов и пулов потоков. Считайте его инфраструктурой, которая делает возможными разные реализации async, не привязывая PHP жёстко к одному циклу событий (event loop).\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Ftrue_async_engine_api](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Ftrue_async_engine_api)\n\n#### Области видимости и структурированный параллелизм в True Async. Статус: На обсуждении\n\nЭто расширяет предложение True Async областями жизненного цикла для корутин и концепциями структурированного параллелизма. Ключевая идея — привязать конкурентную работу к области видимости, чтобы отмена и очистка происходили автоматически по завершении области.\n\nRFC: [https:\u002F\u002Fwiki.php.net\u002Frfc\u002Ftrue_async_scope](https:\u002F\u002Fwiki.php.net\u002Frfc\u002Ftrue_async_scope)\n\n\u003Ch3 id=\"zaklyuchenie\">Заключение\u003C\u002Fh3>\n\nТеперь у вас есть реалистичный ориентир по срокам релиза PHP 8.6, опирающийся на недавний ритм релизов в конце ноября. Мы рассмотрели возможности, уже принятые или находящиеся в реализации, включая частичное применение функций и clamp(). Мы сгруппировали все остальные предложенные для PHP 8.6 RFC, которые пока находятся в статусе черновика или на обсуждении, с кратким описанием того, что они изменят. По мере проведения голосований единственный надёжный источник истины — статус каждого конкретного RFC, поэтому следите за тем, какие пункты переходят в статус «Принят» или «Реализован».\n\n![]({{strapiUrl}}\u002Fuploads\u002Fc56b26087a188121b23a62999c07d439_b386c8935c.webp)\n\nУже сейчас [OpenIDE](https:\u002F\u002Fopenide.ru\u002F) позволяет разрабатывать проекты на Java, Spring, Python, Go, PHP, JavaScript и TypeScript! А поддержка Docker и 300+ плагинов доступны абсолютно бесплатно в [маркетплейсе](https:\u002F\u002Fmarketplace.openide.ru\u002F). Пробуйте российскую IDE в деле и подписывайтесь на нас в [Telegram](https:\u002F\u002Ft.me\u002Fopenide_official) или [Max](https:\u002F\u002Fmax.ru\u002Fopenide), чтобы не пропустить свежие обновления и полезные материалы.\n\n---\n\n_Впервые опубликовано на [Хабре](https:\u002F\u002Fhabr.com\u002Fru\u002Fcompanies\u002Fhaulmont\u002Farticles\u002F1053944\u002F)._\n",[18],{"title":19,"links":20},"Содержание",[21,24,27],{"label":22,"href":23},"Принято или уже реализуется к следующему релизу","#prinyato-ili-uzhe-realizuetsya-k-sleduyushhemu-relizu",{"label":25,"href":26},"RFC, ещё не принятые для PHP 8.6","#rfc-eshhyo-ne-prinyatye-dlya-php-8-6",{"label":28,"href":29},"Заключение","#zaklyuchenie","2026-11-12T11:25:16.364Z","2026-11-13T11:49:18.448Z","2026-11-13T11:49:18.510Z",{"id":34,"documentId":35,"firstname":36,"lastname":37,"createdAt":38,"updatedAt":39,"publishedAt":40,"slug":41,"photo":42},40,"yuewij1jc3qoxmkvsh2mpeny","Георгий","Власов","2026-02-17T11:40:25.168Z","2026-11-13T11:49:25.324Z","2026-11-13T11:49:25.371Z","georgij-vlasov",{"id":43,"documentId":44,"name":45,"alternativeText":46,"caption":46,"width":47,"height":47,"formats":46,"hash":48,"ext":49,"mime":50,"size":51,"url":52,"previewUrl":46,"provider":53,"provider_metadata":46,"createdAt":54,"updatedAt":54,"publishedAt":54,"focalPoint":46},1359,"jt1gpp4kqcyzwuwfhzj1c1vc","Gosha_ab88bd0ec5.webp",null,96,"Gosha_ab88bd0ec5_972867885d",".webp","image\u002Fwebp",2.14,"\u002Fuploads\u002FGosha_ab88bd0ec5_972867885d.webp","local","2026-11-13T11:47:15.450Z",{"id":56,"documentId":57,"name":58,"alternativeText":46,"caption":46,"width":59,"height":60,"formats":61,"hash":94,"ext":49,"mime":50,"size":95,"url":96,"previewUrl":46,"provider":53,"provider_metadata":46,"createdAt":97,"updatedAt":97,"publishedAt":97,"focalPoint":46},1241,"sioqhdtxzma1x4cwhuptpv5o","cover-php-8-6-data-reliza-predstoyashhie-vozmozhnosti-i-status-rfc.webp",1672,941,{"thumbnail":62,"medium":70,"small":78,"large":86},{"name":63,"hash":64,"ext":49,"mime":50,"path":46,"width":65,"height":66,"size":67,"sizeInBytes":68,"url":69},"thumbnail_cover-php-8-6-data-reliza-predstoyashhie-vozmozhnosti-i-status-rfc.webp","thumbnail_cover_php_8_6_data_reliza_predstoyashhie_vozmozhnosti_i_status_rfc_d750c8c5c6",245,138,5.65,5650,"\u002Fuploads\u002Fthumbnail_cover_php_8_6_data_reliza_predstoyashhie_vozmozhnosti_i_status_rfc_d750c8c5c6.webp",{"name":71,"hash":72,"ext":49,"mime":50,"path":46,"width":73,"height":74,"size":75,"sizeInBytes":76,"url":77},"medium_cover-php-8-6-data-reliza-predstoyashhie-vozmozhnosti-i-status-rfc.webp","medium_cover_php_8_6_data_reliza_predstoyashhie_vozmozhnosti_i_status_rfc_d750c8c5c6",750,422,43.73,43732,"\u002Fuploads\u002Fmedium_cover_php_8_6_data_reliza_predstoyashhie_vozmozhnosti_i_status_rfc_d750c8c5c6.webp",{"name":79,"hash":80,"ext":49,"mime":50,"path":46,"width":81,"height":82,"size":83,"sizeInBytes":84,"url":85},"small_cover-php-8-6-data-reliza-predstoyashhie-vozmozhnosti-i-status-rfc.webp","small_cover_php_8_6_data_reliza_predstoyashhie_vozmozhnosti_i_status_rfc_d750c8c5c6",500,281,21.26,21258,"\u002Fuploads\u002Fsmall_cover_php_8_6_data_reliza_predstoyashhie_vozmozhnosti_i_status_rfc_d750c8c5c6.webp",{"name":87,"hash":88,"ext":49,"mime":50,"path":46,"width":89,"height":90,"size":91,"sizeInBytes":92,"url":93},"large_cover-php-8-6-data-reliza-predstoyashhie-vozmozhnosti-i-status-rfc.webp","large_cover_php_8_6_data_reliza_predstoyashhie_vozmozhnosti_i_status_rfc_d750c8c5c6",1000,563,68.82,68822,"\u002Fuploads\u002Flarge_cover_php_8_6_data_reliza_predstoyashhie_vozmozhnosti_i_status_rfc_d750c8c5c6.webp","cover_php_8_6_data_reliza_predstoyashhie_vozmozhnosti_i_status_rfc_d750c8c5c6",150.62,"\u002Fuploads\u002Fcover_php_8_6_data_reliza_predstoyashhie_vozmozhnosti_i_status_rfc_d750c8c5c6.webp","2026-11-13T11:44:34.505Z",[99],{"id":100,"documentId":101,"title":102,"published":103,"weight":104,"slug":105,"createdAt":106,"updatedAt":107,"publishedAt":108,"color":46},5,"j3ptvz8nc7ijk3w80s01koxc","Обзоры",true,4,"reviews","2026-11-12T11:20:31.440Z","2026-11-12T11:22:44.313Z","2026-11-12T11:22:44.297Z",{"pagination":110},{"page":111,"pageSize":112,"pageCount":111,"total":111},1,25,{"data":114},[],{"data":116,"meta":135},[117,123,129],{"published_date":118,"id":119,"documentId":120,"title":121,"slug":122},"2026-07-21",359,"hrh0asxfdodwjoioqkqwta73","Заглядывая в будущее: Postgres 19. REPACK, SQL\u002FPGQ и умный autovacuum","zaglyadyvaya-v-budushhee-postgres-19-repack-sql-pgq-i-umnyj-autovacuum",{"published_date":124,"id":125,"documentId":126,"title":127,"slug":128},"2026-07-10",348,"vtjvnrwjysp7pg2m5yplwrr5","TypeScript 7.0 — самое радикальное обновление за 10 лет","typescript-7-0-samoe-radikalnoe-obnovlenie-za-10-let",{"published_date":130,"id":131,"documentId":132,"title":133,"slug":134},"2026-07-07",355,"szopwdkqo292rl7vrla29h52","Ленивые импорты в Python 3.15: как PEP 810 ускоряет старт приложений","lenivye-importy-v-python-3-15-kak-pep-810-uskoryaet-start-prilozhenij",{"pagination":136},{"page":111,"pageSize":137,"pageCount":137,"total":138},3,7,1794584601955]