# Підтримка PHP у Maguyva: довгоживучі веб-застосунки без сліпих правок

Canonical source: https://maguyva.ai/uk/languages/php

License: text under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/); code samples under [MIT-0](https://opensource.org/license/mit-0); the Maguyva name, logos, brand assets and other code are not covered. Details: [maguyva.ai/license](https://maguyva.ai/license).

Maguyva підтримує PHP з розбором AST та вилученням символів, щоб ШІ-агенти могли орієнтуватися в застосунках Laravel, кастомних фреймворках, коді доби WordPress та інших довгоживучих репозиторіях PHP з більшою структурою, ніж дає grep.

## Знімок підтримки

- Рівень: Підтримка AST і символів
- Програмування
- Розширення: .php, .php3, .php4, .php5, .phps, .phtml
- Справжній розбір AST для пошуку з урахуванням синтаксису та структурного контексту.
- Іменовані символи забезпечують семантичний пошук і перехресні посилання. Навігація графом доступна, коли ввімкнено видобування зв’язків.
- Ця мова додає символи та зв’язки до пошуку з урахуванням графа; підтримувані типи ребер залежать від притаманних їй конструкцій.
- Доступні як розбір AST, так і видобування символів.

## Найкраще підходить

- Репозиторії Laravel, кастомного PHP чи змішаних монолітів, які досі мають операційне значення.
- Команди, що підтримують старіші веб-застосунки, які тепер сусідять із фронтендами на JavaScript та інфраструктурним кодом.
- Робота з рефакторингу за допомогою ШІ, де пріоритет — зрозуміти наявний потік перед його зміною.

## Робочі процеси агента

- Простежити шлях маршруту, контролера, сервісу чи спільного хелпера перед його редагуванням.
- Знайти повторювані патерни реалізації у зрілій кодовій базі PHP замість вигадування нових.
- Відновити структуру в старішому коді, що пережив кілька епох фреймворків чи хостингу.

## Чому PHP потребує пошуку, що враховує структуру

PHP — один з найяскравіших прикладів того, чому широка підтримка мов має бути реальною, а не декларативною. Багато важливих систем досі є системами на PHP: застосунки Laravel, старі моноліти, внутрішні адмін-інструменти та сильно кастомізовані веб-застосунки, що пережили кожне заплановане переписування.

У таких репозиторіях проблема не в синтаксисі. Вона в безпечному відновленні структури з кодової бази, яка роками накопичувала хелпери, конвенції фреймворку та локальні хитрощі.

## Що Maguyva насправді вилучає в PHP

Maguyva прибирає символ `$` з визначень, нормалізує виклики з префіксом члена та відфільтровує дуже велику частку шуму вбудованих функцій PHP з графа зв'язків. Це саме те очищення, якого потребує старіший код PHP, перш ніж перегляди пошуку та залежностей стануть корисними.

Він також підтримує формати файлів, з якими насправді стикаються команди PHP, від `.php` та `.phtml` до розширень файлів, пов'язаних зі старішими версіями PHP, які досі трапляються в довгоживучих системах.

## Корисні робочі процеси MCP для довгоживучих застосунків PHP

Продуктивний патерн зазвичай такий:

- `find_symbol` для контролерів, сервісів, моделей чи допоміжних класів зі стабільними назвами.
- `text_pattern_search` для назв маршрутів, викликів хелперів чи старих конвенцій фреймворку, коли точний текст усе ще найшвидший шлях.
- `get_task_context`, коли шлях коду заплутаний і ви хочете отримати узагальнений огляд перед редагуванням.

## Коли ця сторінка корисна

Ця сторінка для команд, чиє практичне питання просто «ми досі використовуємо важливий PHP». Якщо фронтенд живе в сучасному JavaScript, прочитайте далі [JavaScript](/uk/languages/javascript). Якщо в репозиторії є новіші сервісні чи автоматизаційні шари по краях, [Python](/uk/languages/python) — доречніший супутній матеріал.

## Деталі рушія

- Під час аналізу PHP Maguyva видаляє символ `$` із визначень і нормалізує виклики з префіксом члена, що робить старий код, перевантажений хелперами, легшим для послідовного пошуку.
- Підтримка охоплює типові формати файлів PHP, зокрема `.php`, `.php3`, `.php4`, `.php5`, `.phtml` і `.phps`.
- Великий фільтр вбудованих функцій прибирає з графа виклики стандартних функцій середовища виконання PHP, щоб граф залишався сфокусованим на коді застосунку.

## Корисні точки входу MCP

- `find_symbol`: Використовуйте для контролера, сервісу, моделі чи класу-хелпера, коли репозиторій усе ще має розпізнавані назви символів.
- `text_pattern_search`: Використовуйте для назв маршрутів, викликів хелперів чи старих конвенцій фреймворку, коли самої структури недостатньо.
- `get_task_context`: Корисно, коли потрібне зведене резюме старого потоку PHP перед його зміною.
