# PHP-tuki Maguyva-palvelussa: pitkäikäiset web-sovellukset ilman sokkomuokkauksia

Canonical source: https://maguyva.ai/fi/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 tukee PHP:tä AST-jäsennyksellä ja symbolien poiminnalla, jotta tekoälyagentit voivat navigoida Laravel-sovelluksissa, räätälöidyissä frameworkeissa, WordPress-aikakauden koodissa ja muissa pitkäikäisissä PHP-repositorioissa enemmän rakenteella kuin grepillä.

## Tukikatsaus

- Taso: AST- ja symbolituki
- Ohjelmointi
- Päätteet: .php, .php3, .php4, .php5, .phps, .phtml
- Oikea AST-jäsennys syntaksitietoiseen hakuun ja rakenteelliseen kontekstiin.
- Nimetyt symbolit syöttävät semanttista hakua ja ristiviittauksia. Graafinavigointi on käytettävissä, kun suhteiden poiminta on käytössä.
- Tämä kieli tuo symboleja ja suhteita graafia hyödyntävään hakuun; tuetut reunatyypit vaihtelevat kielen omien rakenteiden mukaan.
- Sekä AST-jäsennys että symbolien poiminta ovat käytettävissä.

## Parhaiten sopii

- Laravel-, räätälöity PHP- tai sekoitetut monoliittirepositoriot, jotka yhä ovat operatiivisesti tärkeitä.
- Tiimit, jotka ylläpitävät vanhempia web-sovelluksia, jotka nyt sijaitsevat JavaScript-käyttöliittymien ja infrastruktuurikoodin vieressä.
- Tekoälyavusteinen refaktorointityö, jossa prioriteettina on ymmärtää nykyinen kulku ennen sen muuttamista.

## Agenttien työnkulut

- Jäljitä reitti, controller, palvelu tai jaettu apuohjelma ennen sen muokkaamista.
- Löydä toistuvia toteutusmalleja kypsästä PHP-koodikannasta uusien keksimisen sijaan.
- Palauta rakenne vanhempaan koodiin, joka on elänyt useiden framework- tai hosting-aikakausien läpi.

## Miksi PHP tarvitsee rakennetietoista hakua

PHP on yksi selkeimmistä esimerkeistä siitä, miksi laajan kielituen täytyy olla aitoa, ei tavoiteltua. Monet tärkeät järjestelmät ovat yhä PHP-järjestelmiä: Laravel-sovelluksia, vanhoja monoliitteja, sisäisiä ylläpitotyökaluja ja voimakkaasti räätälöityjä web-sovelluksia, jotka selvisivät jokaisesta suunnitellusta uudelleenkirjoituksesta.

Näissä repositorioissa ongelma ei ole syntaksi. Se on sellaisen koodikannan rakenteen turvallinen selvittäminen, johon on vuosien aikana kertynyt apuohjelmia, framework-käytäntöjä ja paikallisia oikoteitä.

## Mitä Maguyva todella poimii PHP:stä

Maguyva poistaa `$`-merkin määrittelyistä, normalisoi jäsenetuliitteiset kutsut ja suodattaa suuren määrän PHP:n sisäänrakennettujen funktioiden kohinaa suhdegraafista. Se on juuri sellaista siivousta, jota vanhempi PHP-koodi tarvitsee ennen kuin haku- ja riippuvuusnäkymät muuttuvat hyödyllisiksi.

Se tukee myös tiedostomuotoja, joita PHP-tiimit todella kohtaavat, `.php`:sta ja `.phtml`:sta vanhempiin version mukaan nimettyihin tiedostopäätteisiin, joita yhä esiintyy pitkäikäisissä ympäristöissä.

## Hyödyllisiä MCP-työnkulkuja pitkäikäisille PHP-sovelluksille

Tuottava malli on yleensä:

- `find_symbol` controllereille, palveluille, malleille tai apuluokille, joilla on vakaat nimet.
- `text_pattern_search` reittinimille, apukutsuille tai vanhoille framework-käytännöille, kun tarkka teksti on yhä nopein polku.
- `get_task_context`, kun koodipolku on sotkuinen ja haluat yhteen kootun yhteenvedon ennen muokkaamista.

## Milloin tämä sivu on hyödyllinen

Tämä sivu on tiimeille, joiden käytännön kysymys on yksinkertaisesti "me yhä ajamme tärkeää PHP:tä". Jos frontend elää modernissa JavaScriptissä, lue seuraavaksi [JavaScript](/fi/languages/javascript). Jos repositoriossa on uudempia palvelu- tai automaatiokerroksia reunoilla, [Python](/fi/languages/python) on relevantimpi kumppanisivu.

## Moottorin yksityiskohdat

- PHP poistaa `$`-merkin määrittelyistä ja normalisoi jäsenetuliitteiset kutsut, mikä helpottaa vanhan apufunktiopainotteisen koodin hakemista johdonmukaisesti.
- Tuki kattaa yleiset PHP-tiedostomuodot mukaan lukien `.php`, `.php3`, `.php4`, `.php5`, `.phtml` ja `.phps`.
- Laaja sisäänrakennettujen funktioiden suodatin poistaa PHP:n standardirajapinnan, jotta graafi pysyy keskittyneenä sovelluskoodiin.

## Hyödylliset MCP-liittymäkohdat

- `find_symbol`: Käytä sitä controllerille, palvelulle, mallille tai apuluokalle, kun repossa on vielä tunnistettavia symbolinimiä.
- `text_pattern_search`: Käytä sitä reittinimille, apukutsuille tai vanhoille framework-konventioille, kun pelkkä rakenne ei riitä.
- `get_task_context`: Hyödyllinen, kun tarvitset koostetun yhteenvedon vanhasta PHP-vuosta ennen sen muuttamista.
