[{"data":1,"prerenderedAt":140},["ShallowReactive",2],{"$fBBQ5ulyG5jVWbIBJe3r8F-kTKQKf1scMJiu0B6qzX5k":3,"$f7AVZHmPutZ23_8XKkLbDtEszKCuiY3yPjIDp9eRXGag":5,"$fTcSUBGbKgIFvxdRhXIIYpK3e6We-VLR4Ccc0WUG-CVs":7,"$fGMmy7AnXBqRMhUwjSn01HV96iSFMmArhuciA78VLMIU":115},{"data":4},[],{"data":6},[],{"data":8,"meta":112},[9],{"id":10,"documentId":11,"title":12,"seo_title":12,"summary":13,"seo_description":14,"slug":15,"published_date":16,"body":17,"content":18,"createdAt":34,"updatedAt":35,"publishedAt":36,"blogauthor":37,"cover":59,"categories":102},313,"j6gu52z9kkbs3vr2b0pby0a4","Обновление поддержки PHP в OpenIDE","Обновили PHP в OpenIDE: удобнее работать с импортами и PHPDoc, проверки настраиваются под части проекта, а покрытие PHPUnit из Docker видно рядом с кодом.","PHP в OpenIDE: Optimize Imports для use и PHPDoc, несколько конфигураций PHPStan, Psalm и Mago, покрытие PHPUnit из Docker и Docker Compose.","obnovlenie-podderzhki-php-v-openide","2026-10-08","Обновили поддержку PHP в [OpenIDE](https:\u002F\u002Fopenide.ru\u002F): стало удобнее работать с импортами и PHPDoc, настраивать проверки проекта и запускать тесты в контейнерах.\n\n![]({{strapiUrl}}\u002Fuploads\u002F65adc9caddb9cd2cb3e8685f3ab0c8ab_5baedb6bc5.webp)\n\n> Если вы впервые слышите про [OpenIDE](https:\u002F\u002Fopenide.ru\u002F), это мультиязычная среда разработки на базе IntelliJ Platform. В одном дистрибутиве можно работать с Java, Kotlin, Go, Python, PHP, JavaScript и TypeScript. Рядом с редактором доступны инструменты для работы с базами данных, AI-агентами, HTTP-запросами, Git и Docker.\n\n\u003Ch3 id=\"chto-stalo-udobnee-pri-rabote-s-php\">Что стало удобнее при работе с PHP\u003C\u002Fh3>\n\nПри редактировании кода IDE помогает поддерживать порядок в импортах. Optimize Imports удаляет неиспользуемые `use`, в том числе отдельные части составных импортов, и сохраняет имена, нужные коду и PHPDoc. Класс из PHPDoc можно импортировать через `Alt+Enter`, даже если включён внешний анализатор; добавление импорта сохраняет комментарии и HTML. Переход по `@inheritDoc` открывает соответствующий метод интерфейса или родительского класса, а при нескольких подходящих целях позволяет выбрать нужную. В PHP-шаблонах тоже стало удобнее работать: HTML-сокращения Emmet раскрываются по `Tab` в HTML-части файла.\n\n![]({{strapiUrl}}\u002Fuploads\u002Fcbb539b7b4d51863ea930f1ec4ea4977_fed06259b8.webp)\n\nПроверки теперь можно настроить под разные части проекта. Для PHPStan, Psalm, Mago, PHP_CodeSniffer и PHP CS Fixer доступны несколько именованных конфигураций со своими путями, параметрами и исключениями. Все включённые конфигурации выполняются независимо. Mago можно использовать для архитектурных проверок через guard и для форматирования через Reformat Code. Конфигурация форматирования выбирается отдельно от анализа, поэтому эти задачи можно настраивать независимо друг от друга.\n\n![]({{strapiUrl}}\u002Fuploads\u002F4ec829577ec4727a04873437ecf36411_c04185af4f.webp)\n\nТесты можно запускать прямо из файлов и каталогов в дереве проекта, включая вложенные папки, и смотреть результаты в дереве тестов. Покрытие PHPUnit из Docker и Docker Compose отображается в редакторе — видно, какие строки выполнялись при тестировании. Сохранённый отчёт можно открыть повторно. Если выбранный локальный PHPUnit не найден, IDE останавливает запуск до старта PHP и предлагает выполнить `composer install` или настроить путь: причину неудачного запуска проще понять сразу.\n\n![]({{strapiUrl}}\u002Fuploads\u002F0e93967073cd6f11b3fa8a12ed0efd47_40bfac5da0.webp)\n\n\u003Ch2 id=\"ai-agenty-ryadom-s-kodom\">AI-агенты рядом с кодом\u003C\u002Fh2>\n\nВ [OpenIDE Pro](https:\u002F\u002Fopenide.ru\u002Fpro\u002F) также доступен AI-плагин: через ACP можно подключить Claude Code, Codex, OpenCode и Cursor, поставить задачу агенту и проверить предложенные изменения в редакторе.\n\n![]({{strapiUrl}}\u002Fuploads\u002F6ecb406c6be8458ffd159bd47521c19b_7e129cd870.webp)\n\nОб интеграции подробнее рассказали в отдельном материале[о релизе AI-плагина](\u002Fblog\u002Freliz-openide-claude-code-codex-opencode-i-cursor-pryamo-v-ide\u002F).\n\n\u003Cvideo src=\"https:\u002F\u002Fstorage.yandexcloud.net\u002Famplicode-site\u002Farticles\u002Fdigest-22\u002Fai_plugin.mp4\" controls muted loop playsinline width=\"100%\" poster=\"{{strapiUrl}}\u002Fuploads\u002Fcover_obnovlenie_podderzhki_php_v_openide_2e4646d600.webp\" preload=\"none\">\u003C\u002Fvideo>\n\n\u003Ch2 id=\"obnovleniya-db-klienta\">Обновления DB-клиента\u003C\u002Fh2>\n\nВ [релизе платформы 2026.2](\u002Fblog\u002Freliz-openide-2026-2\u002F) DB-клиент получил форматирование SQL, поддержку Greenplum и последовательное выполнение нескольких выделенных запросов.\n\n![]({{strapiUrl}}\u002Fuploads\u002F1d99bf0e9e1936e33fb388b5f6b4f2c7_b7e8bfb263.webp)\n\nВ [отдельном обзоре](\u002Fblog\u002Fdb-klient-openide-ot-podklyucheniya-k-baze-do-explain-i-eksporta\u002F) показали, как подключиться к базе, посмотреть EXPLAIN, отредактировать и выгрузить данные.\n\n\u003Cvideo src=\"https:\u002F\u002Fstorage.yandexcloud.net\u002Famplicode-site\u002Farticles\u002Fdb_client_compressed.mp4\" controls muted loop playsinline width=\"100%\" poster=\"{{strapiUrl}}\u002Fuploads\u002Fcover_obnovlenie_podderzhki_php_v_openide_2e4646d600.webp\" preload=\"none\">\u003C\u002Fvideo>\n\n\u003Ch2 id=\"kak-poprobovat\">Как попробовать\u003C\u002Fh2>\n\n[Скачайте OpenIDE с сайта](https:\u002F\u002Fopenide.ru\u002Fdownload\u002F) и обновите PHP-плагин, его описание доступно [в маркетплейсе](https:\u002F\u002Fmarketplace.openide.ru\u002Fplugin\u002Fphp-for-openide\u002F424\u002F).\n\nПопробуйте обновление на своих PHP-проектах. Ошибки, замечания и пожелания присылайте [в чат OpenIDE](https:\u002F\u002Ft.me\u002Fopenide_chat) — ваша обратная связь помогает нам развивать поддержку.\n\n![]({{strapiUrl}}\u002Fuploads\u002Faa6452d30f98dd1328d2d0460181a825_7231b8b917.webp)\n\n---\n\n_Впервые опубликовано на [Хабре](https:\u002F\u002Fhabr.com\u002Fru\u002Fcompanies\u002Fhaulmont\u002Farticles\u002F1092124\u002F)._\n",[19],{"title":20,"links":21},"Содержание",[22,25,28,31],{"label":23,"href":24},"Что стало удобнее при работе с PHP","#chto-stalo-udobnee-pri-rabote-s-php",{"label":26,"href":27},"AI-агенты рядом с кодом","#ai-agenty-ryadom-s-kodom",{"label":29,"href":30},"Обновления DB-клиента","#obnovleniya-db-klienta",{"label":32,"href":33},"Как попробовать","#kak-poprobovat","2026-11-12T11:23:16.043Z","2026-11-13T11:49:13.086Z","2026-11-13T11:49:13.142Z",{"id":38,"documentId":39,"firstname":40,"lastname":41,"createdAt":42,"updatedAt":43,"publishedAt":44,"slug":45,"photo":46},40,"yuewij1jc3qoxmkvsh2mpeny","Георгий","Власов","2026-02-17T11:40:25.168Z","2026-11-13T11:49:25.324Z","2026-11-13T11:49:25.371Z","georgij-vlasov",{"id":47,"documentId":48,"name":49,"alternativeText":50,"caption":50,"width":51,"height":51,"formats":50,"hash":52,"ext":53,"mime":54,"size":55,"url":56,"previewUrl":50,"provider":57,"provider_metadata":50,"createdAt":58,"updatedAt":58,"publishedAt":58,"focalPoint":50},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":60,"documentId":61,"name":62,"alternativeText":50,"caption":50,"width":63,"height":64,"formats":65,"hash":98,"ext":53,"mime":54,"size":99,"url":100,"previewUrl":50,"provider":57,"provider_metadata":50,"createdAt":101,"updatedAt":101,"publishedAt":101,"focalPoint":50},1231,"sapr2u4guza1zxqocdh9imua","cover-obnovlenie-podderzhki-php-v-openide.webp",1280,720,{"thumbnail":66,"large":74,"medium":82,"small":90},{"name":67,"hash":68,"ext":53,"mime":54,"path":50,"width":69,"height":70,"size":71,"sizeInBytes":72,"url":73},"thumbnail_cover-obnovlenie-podderzhki-php-v-openide.webp","thumbnail_cover_obnovlenie_podderzhki_php_v_openide_2e4646d600",245,138,6.4,6398,"\u002Fuploads\u002Fthumbnail_cover_obnovlenie_podderzhki_php_v_openide_2e4646d600.webp",{"name":75,"hash":76,"ext":53,"mime":54,"path":50,"width":77,"height":78,"size":79,"sizeInBytes":80,"url":81},"large_cover-obnovlenie-podderzhki-php-v-openide.webp","large_cover_obnovlenie_podderzhki_php_v_openide_2e4646d600",1000,562,29,29002,"\u002Fuploads\u002Flarge_cover_obnovlenie_podderzhki_php_v_openide_2e4646d600.webp",{"name":83,"hash":84,"ext":53,"mime":54,"path":50,"width":85,"height":86,"size":87,"sizeInBytes":88,"url":89},"medium_cover-obnovlenie-podderzhki-php-v-openide.webp","medium_cover_obnovlenie_podderzhki_php_v_openide_2e4646d600",750,422,21.74,21736,"\u002Fuploads\u002Fmedium_cover_obnovlenie_podderzhki_php_v_openide_2e4646d600.webp",{"name":91,"hash":92,"ext":53,"mime":54,"path":50,"width":93,"height":94,"size":95,"sizeInBytes":96,"url":97},"small_cover-obnovlenie-podderzhki-php-v-openide.webp","small_cover_obnovlenie_podderzhki_php_v_openide_2e4646d600",500,281,14.36,14362,"\u002Fuploads\u002Fsmall_cover_obnovlenie_podderzhki_php_v_openide_2e4646d600.webp","cover_obnovlenie_podderzhki_php_v_openide_2e4646d600",39.62,"\u002Fuploads\u002Fcover_obnovlenie_podderzhki_php_v_openide_2e4646d600.webp","2026-11-13T11:44:22.082Z",[103],{"id":104,"documentId":105,"title":106,"published":107,"weight":104,"slug":108,"createdAt":109,"updatedAt":110,"publishedAt":111,"color":50},1,"hc2qik74iq346rzrodyoc5l5","Продукт",true,"release","2025-08-25T10:17:40.582Z","2026-11-12T11:22:44.594Z","2026-11-12T11:22:44.573Z",{"pagination":113},{"page":104,"pageSize":114,"pageCount":104,"total":104},25,{"data":116,"meta":135},[117,123,129],{"published_date":118,"id":119,"documentId":120,"title":121,"slug":122},"2026-11-09",301,"nla7pt5zwy8t0wknadxvz37z","OpenIDE Pro теперь можно купить для себя","openide-pro-personal-licenses",{"published_date":124,"id":125,"documentId":126,"title":127,"slug":128},"2026-11-07",309,"ua3z428wr5otk0z29kwjoedf","Сегодня Claude, завтра Codex: обновления мультиагентной OpenIDE","segodnya-claude-zavtra-codex-obnovleniya-multiagentnoj-openide",{"published_date":130,"id":131,"documentId":132,"title":133,"slug":134},"2026-11-05",318,"xvoscpm4g3zkv4n6afehxus2","Обновление C# в OpenIDE: управление NuGet‑пакетами прямо из IDE","openide-csharp-upravlenie-nuget-paketami",{"pagination":136},{"page":104,"pageSize":137,"pageCount":138,"total":139},3,11,31,1794584599439]