# Supporto PHP in Maguyva: applicazioni web di lunga data senza modifiche alla cieca

Canonical source: https://maguyva.ai/it/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 supporta PHP con parsing AST ed estrazione dei simboli, così gli agenti IA possono navigare app Laravel, framework personalizzati, codice dell'era WordPress, e altri repository PHP di lunga data con più struttura di grep.

## Istantanea del supporto

- Livello: Supporto AST e simboli
- Programmazione
- Estensioni: .php, .php3, .php4, .php5, .phps, .phtml
- Analisi AST reale per ricerca sintattica e contesto strutturale.
- I simboli nominati alimentano la ricerca semantica e i riferimenti incrociati. La navigazione del grafo è disponibile quando è abilitata l’estrazione delle relazioni.
- Questo linguaggio contribuisce con simboli e relazioni alla ricerca basata sul grafo; i tipi di arco supportati variano in base ai suoi costrutti nativi.
- Sono disponibili sia l’analisi AST sia l’estrazione dei simboli.

## Il più adatto per

- Repository Laravel, PHP personalizzato, o monoliti misti che contano ancora a livello operativo.
- Team che mantengono applicazioni web più datate che ora convivono con frontend JavaScript e codice di infrastruttura.
- Lavoro di refactoring assistito da AI dove la priorità è capire il flusso esistente prima di modificarlo.

## Workflow degli agenti

- Traccia il percorso di una route, controller, service, o helper condiviso prima di modificarlo.
- Trova pattern di implementazione ripetuti in un codebase PHP maturo invece di inventarne di nuovi.
- Recupera struttura in codice più vecchio che ha attraversato diverse ere di framework o hosting.

## Perché PHP ha bisogno di ricerca consapevole della struttura

PHP è uno degli esempi più chiari del perché il supporto linguistico ampio debba essere reale, non aspirazionale. Molti sistemi importanti sono ancora sistemi PHP: app Laravel, vecchi monoliti, strumenti amministrativi interni, e applicazioni web pesantemente personalizzate sopravvissute a ogni riscrittura pianificata.

In quei repository, il problema non è la sintassi. È recuperare in sicurezza la struttura da un codebase che ha avuto anni per accumulare helper, convenzioni del framework, e scorciatoie locali.

## Cosa estrae davvero Maguyva in PHP

Maguyva rimuove il prefisso `$` dalle definizioni, normalizza le chiamate con prefisso member, e filtra una quantità molto grande di rumore da funzioni built-in PHP dal grafo delle relazioni. È esattamente il tipo di pulizia di cui il codice PHP più vecchio ha bisogno prima che le viste di ricerca e dipendenza diventino utili.

Supporta anche i formati di file che i team PHP incontrano davvero, da `.php` e `.phtml` fino a estensioni legate a versioni PHP più vecchie che compaiono ancora nei patrimoni di lunga data.

## Workflow MCP utili per app PHP di lunga data

Il pattern produttivo di solito è:

- `find_symbol` per controller, service, model, o classi helper con nomi stabili.
- `text_pattern_search` per nomi di route, chiamate helper, o vecchie convenzioni del framework quando il testo esatto è ancora il percorso più veloce.
- `get_task_context` quando il percorso di codice è disordinato e vuoi un riepilogo ricomposto prima di modificare.

## Quando questa pagina è utile

Questa pagina è per i team la cui domanda pratica è semplicemente "usiamo ancora PHP in modo importante." Se il frontend vive in JavaScript moderno, leggi poi [JavaScript](/it/languages/javascript). Se il repository ha livelli di servizio o automazione più recenti ai margini, [Python](/it/languages/python) è la pagina compagna più rilevante.

## Dettagli del motore

- L'analisi di PHP rimuove il prefisso `$` dalle definizioni e normalizza le chiamate con prefisso membro, il che rende più facile cercare in modo coerente nel vecchio codice ricco di helper.
- Il supporto copre le estensioni comuni dei file PHP, tra cui `.php`, `.php3`, `.php4`, `.php5`, `.phtml` e `.phps`.
- Un ampio filtro sulle funzioni builtin esclude dal grafo le chiamate standard del runtime PHP così il grafo resta focalizzato sul codice applicativo.

## Punti di ingresso MCP utili

- `find_symbol`: Usalo per un controller, servizio, modello o classe helper quando il repository ha ancora nomi di simboli riconoscibili.
- `text_pattern_search`: Usalo per nomi di route, chiamate helper o vecchie convenzioni del framework quando la sola struttura non basta.
- `get_task_context`: Utile quando ti serve un riepilogo che riunisce il contesto di un vecchio flusso PHP prima di modificarlo.
