php

Kako namestiti Xdebug in ga uporabiti v PHP na Ubuntu?

Kako namestiti Xdebug in ga uporabiti v PHP na Ubuntu?
Ko katera koli programska koda ustvari nepričakovane rezultate, mora za rešitev težave ugotoviti razlog za napako izhoda. Odpravljanje napak je najboljši način, da ugotovite razlog za nepričakovane izpise kode s sledenjem kode korak za korakom.

Običajno, print_r () in var_dump () funkcije se uporabljajo za preverjanje izhoda spremenljivk. Razširitev Xdebug se v PHP uporablja za napredno raven odpravljanja napak. Ta razširitev privzeto ni nameščena v PHP. Namestiti ga morate in nastaviti potrebne konfiguracije za uporabo njegovih funkcij. Kako je mogoče razširitev Xdebug namestiti in konfigurirati v PHP ter jo integrirati z urejevalnikom Visual Studio Code v Ubuntu, je prikazano v tej vadnici.

Namestite Xdebug za PHP

Iz terminala zaženite naslednji ukaz, da namestite razširitev Xdebug za nameščeno različico PHP 7+.

$ sudo apt namestite php-xdebug

Če je razširitev pravilno nameščena v sistemu, boste dobili naslednji izhod.

Konfigurirajte razširitev Xdebug

Zaženite naslednji ukaz, da ustvarite poimenovano konfiguracijsko datoteko xdebug.ini. Pot mape, ki je na voljo za mods, morate pravilno nastaviti glede na nameščeno različico PHP. Glede na pot, uporabljeno v ukazu, različica PHP 7.4 je nameščen v trenutnem sistemu.

$ sudo nano / etc / php / 7.4 / mods-available / xdebug.ini

V datoteko dodajte naslednje vrstice, da nastavite potrebne konfiguracije, da omogočite razširitev Xdebug za PHP.

xdebug.remote_autostart = 1
xdebug.remote_enable = 1
xdebug.remote_handler = dbgp
xdebug.oddaljeni_gost = 127.0.0.1
xdebug.oddaljeni_log = / tmp / xdebug_remote.log
xdebug.oddaljeni način = zahteva
xdebug.remote_port = 9005 # to je mogoče spremeniti

Znova zaženite spletni strežnik

Zaženite naslednji ukaz s korenskim pooblastilom, da znova zaženete strežnik Apache.

$ sudo service apache2 restart

Preverjanje namestitve Xdebug

Zaženite naslednji ukaz, da preverite, ali je Xdebug pravilno nameščen ali ne. Če je razširitev nameščena pravilno, bo naslednji ukaz prikazal informacije o nameščeni različici Xdebug z različico PHP.

$ php -v

Naslednji izhod kaže, da je Xdebug različice 2.9.6 je nameščen.

Konfigurirajte Xdebug v VSCode

Če je urejevalnik kod Visual Studio odprt pred namestitvijo razširitve Xdebug, ga znova odprite. Odprite Razširitve s klikom na Pogled meni ali pritiskom na Ctrl + Shift + x. Tip “PHP odpravljanje napak” v iskalnem polju Razširitve okno. Če je razširitev Xdebug pravilno integrirana s tem urejevalnikom, boste dobili naslednje informacije.

S klikom odprite konfiguracijsko datoteko Xdebuga 'Dodaj konfiguracijo ...' v meniju Teči in nastavite potrebno konfiguracijo glede na xdebug.ini mapa.

Odpravljanje napak PHP skripta z uporabo Xdebuga

Ustvarite datoteko PHP z naslednjim skriptom, da prikažete način uporabe razhroščevalnika Xdebug.

// Določite vrsto spletnega mesta
$ sitetype = "Iskalnik";
// Določite vrste spletnih mest
$ site1 = 'yahoo.com ';
$ site2 = 'hi5.com ';
$ site3 = 'aliexpress.com ';
// Preverite vrednost spremenljivke $ sitetype
stikalo ($ sitetype)

// Določimo polje na podlagi ujemanja in spletnega mesta za iskanje v polju
primer 'Iskalnik':
$ array = Array ('google.com ',' vprašajte.com ',' bing.com ');
če (in_array ($ site1, $ array))
echo "$ site1 je spletno mesto iskalnika.";
drugače
echo "$ site1 na seznamu ne obstaja.";
odmor;
primer "Social Network":
$ array = Array ('facebook.com ',' twitter.com ',' snapchat.com ');
če (in_array ($ site2, $ array))
echo "$ site2 je spletno mesto za družabna omrežja.";
drugače
echo "$ site2 na seznamu ne obstaja.";
odmor;
primer 'E-poslovanje':
$ array = Array ('aliexpress.com ',' ebay.com ',' daraz.com ');
če (in_array ($ site1, $ array))
echo "$ site3 je spletno mesto za e-poslovanje.";
drugače
echo "$ site3 na seznamu ne obstaja.";
odmor;
privzeto:
echo "Neznano spletno mesto.";

?>

Izberite vrstico v skriptu in pritisnite F9 ali kliknite Preklopi mejno točko Iz Teči meni za nastavitev točke preloma v skriptu; lahko nastavite več točk prekinitve. Kliknite na Teči na levi strani urejevalnika, da si ogledate podrobnosti informacij o odpravljanju napak. V naslednjem izhodu sta postavljeni dve točki prekinitve 5 in črta 13.

Zdaj pritisnite F5 ali kliknite Začnite odpravljati napake Iz Teči meni za zagon razhroščevanja z uporabo Xdebug. Pojavila se bo orodna vrstica, kot je naslednja slika za odpravljanje napak, in skript bo ustavil izvajanje na prvi točki preloma, ki je v vrsti 5. V levem oknu se prikaže, katere spremenljivke se inicializirajo in ne inicializirajo po izvedbi skripta v vrstici 5.

Prva ikona v orodni vrstici se uporablja za nadaljevanje skripta in za prehod na naslednjo prelomno točko (F5 se lahko uporabijo v ta namen). Če F5 po pritisku, bo po zagonu odpravljanja napak prešel na naslednjo prelomno točko, ki je v vrsti 13. V tej vrstici bodo nekatere spremenljivke inicializirane.

Druga ikona se uporablja za prestop čez skript in za prehod na vrstico v skladu s skriptom (F10 se lahko uporabijo v ta namen).

Tretja ikona se uporablja za prestop v črto mejne vrednosti (F11 se lahko uporabijo v ta namen).

Četrta ikona se uporablja za izstop iz vseh linij mejnih vrednosti (Shift + F11 se lahko uporabijo v ta namen). Peta ikona se uporablja za ponovni zagon odpravljanja napak (Ctrl + Shift + F5 se lahko uporabijo v ta namen). Šesta ikona se uporablja za zaustavitev odpravljanja napak (Shift + F5 se lahko uporabijo v ta namen).

Zaključek

Xdebug je koristna razširitev PHP, ki se uporablja za globoko odpravljanje napak v skriptu. Programerju pomaga, da zlahka najde razlog za zapletene napake skripta. Način uporabe te razširitve je različen za različne urednike. Tukaj je razloženo, kako je mogoče to razširitev za PHP namestiti in konfigurirati za urejevalnik Visual Studio v Ubuntuju. Uporaba te razširitve za odpravljanje napak je prikazana tudi s preprostim skriptom PHP. Ta vadnica bo bralcem, ki se želijo naučiti napredne ravni odpravljanja napak za skript PHP, pomagati z razširitvijo Xdebug in urejevalnikom VSCode.

Top 5 kartic za zajemanje iger
Vsi smo v YouTubu videli in oboževali pretakanje iger. PewDiePie, Jakesepticye in Markiplier so le nekateri izmed najboljših igralcev, ki so zaslužili...
Kako razviti igro na Linuxu
Pred desetletjem le malo uporabnikov Linuxa napoveduje, da bo njihov najljubši operacijski sistem nekoč priljubljena igralna platforma za komercialne ...
Odprtokodna vrata komercialnih igralnih sistemov
Brezplačne, odprtokodne in medplatformacijske igre, ki jih lahko uporabite za igranje starih, pa tudi nekaterih dokaj nedavnih naslovov iger. V tem čl...