PHP-understøttelse i Maguyva: Langlivede webapps uden blinde rettelser
Relevant når en PHP-kodebase stadig genererer omsætning, men ingen ønsker, at en agent skal improvisere ændringer i den.
Filendelser
.php, .php3, .php4, .php5, +2 flere
Maguyva understøtter Perl med AST, symboler og graf, så AI-agenter kan følge pakker, subrutiner, use- og require-importer og konstruktører i ældre Perl.
Perl-kode er kompakt, fleksibel og ofte skrevet af folk, der stoppede for mange år siden. Sigiler ændrer betydningen af et navn, pakker fungerer også som klasser, og det samme modul indlæses af scripts i mange mapper. En tekstsøgning finder strengene, men fortæller ikke en agent, hvilken subrutine et script faktisk kalder.
Maguyva giver agenten pakker, subrutiner, importer og konstruktører som struktur, så den kan afgrænse en ændring, før den rører koden.
Maguyva dækker .pl, .pm, .t, .pod og .perl. Subrutiner udtrækkes som funktioner og package-erklæringer som klasser, og sigilerne ($, @, %, &, *) fjernes fra definitionsnavnene, så variabler og subrutiner kan søges på deres rene navne.
Importer kommer fra use-, require- og package-sætninger. Metodekald af formen Class->new tæller som instansiering, og bless og tie bevares med vilje i kaldgrafen. Grafen registrerer også nedarvning, overskrivninger, typereferencer, læsninger og skrivninger samt kastede undtagelser.
Omkring 189 indbyggede funktioner (print, open, die, warn og lignende) filtreres fra kaldrelationerne, så repositoryets kode træder frem.
Billing::Invoice, og hvilke af dens subrutiner kalder de?” (dependency_search incoming)Report::Monthly, og hvad sker der efter ->new?” (find_symbol, derefter get_task_context)Auth::Session.” (text_pattern_search, derefter find_symbol)sub-erklæringer i en pakke, så i strukturel søgning klassificeres kun den nyere dedikerede method-syntaks som metode. Brug forudindstillingen functions til ældre objektorienteret Perl.text_pattern_search, når du har brug for hvert kald til open eller print.Tilslut et repository med hurtigstarten, og se derefter understøttelsesmatricen på kompatibilitetssiden. Hvis miljøet flytter til et andet scriptsprog, så sammenlign med guiden til Python.
Bedst egnet til
Agent-arbejdsgange
Motordetaljer
Nyttige MCP-indgange
Brug det til et pakke- eller subrutinenavn; sigiler fjernes, så søg på det rene navn.
Brug incoming-gennemløb på et delt modul for at se, hvilke scripts og pakker der afhænger af det.
Brug det til filtrerede indbyggede funktioner, konfigurationsnøgler og SQL-strenge, som kaldgrafen udelader.
Relaterede guides
Relevant når en PHP-kodebase stadig genererer omsætning, men ingen ønsker, at en agent skal improvisere ændringer i den.
Filendelser
.php, .php3, .php4, .php5, +2 flere
Nyttigt når Python-kodebaser breder sig ud over services, scripts, type stubs og sammenbindende driftskode.
Filendelser
.py, .pyi, .pyw