php

Upotreba xpath () u PHP-u

Upotreba xpath () u PHP-u
XML dokument koristi se za pohranu male količine podataka, a ponekad je potrebno pročitati određeni sadržaj XML dokumenta na temelju vrijednosti puta pomoću PHP skripte. Funkcija xpath () koristi se za raščlanjivanje sadržaja XML dokumenta. Ovu funkciju možete koristiti pomoću simplexml_load_file () funkcije ili stvaranjem objekta SimpleXMLElement razred. Funkcija xpath () može se koristiti za čitanje određenih vrijednosti XML čvora prikazanih u ovom vodiču.

Sintaksa:

Sintaksa funkcije xpath () dana je u nastavku.

niz xpath (niz $ puta)

Ova funkcija ima jedan argument koji uzima vrijednost puta, a ako staza postoji u bilo kojem čvoru XML dokumenta, tada će se vrijednost čvora vratiti kao niz. Različite upotrebe ove funkcije objašnjene su u sljedećem dijelu ovog vodiča.

Stvori XML dokument:

Stvorite XML datoteku s imenom proizvoda.xml sa sljedećim sadržajem na mjestu na kojem će se stvoriti PHP datoteka za raščlanjivanje ove datoteke.




MN-56345
DELL
15-inčni Dell monitor
700


HD-34278
SAMSUNG
HDD Samsung od 1 TB
520


MS-67457
LOGITECH
Logitech bežični miš
100


MN-76453
HP
14-inčni HP monitor
750

Korištenje simplexml_load_file () funkcija:

Funkcija xpath () s objektom stvorenim pomoću funkcije simplexml_load_file () prikazana je u ovom dijelu ovog vodiča.

Primjer-1: Pročitajte određene vrijednosti XML čvora

Sljedeći primjer pokazuje kako čitati sadržaj pojedinih vrijednosti čvora iz XML dokumenta definiranjem putanje funkcije xpath (). Varijabla objekta, $ xml stvoren je za čitanje specifičnih vrijednosti čvora datoteke proizvoda.xml datoteka. '/ PROIZVODI / PROIZVOD / MARKA' koristi se u xpath () za čitanje svih vrijednosti čvora BRAND. '/ PROIZVODI / PROIZVOD' koristi se u xpath () za čitanje svih vrijednosti podređenih čvorova u PROIZVOD čvorovi. za svakoga petlja koristi se za ispis vrijednosti IME i CIJENA čvorovi.

// Stvaranje objekta za čitanje XML datoteke
$ xml = simplexml_load_file ('proizvodi.xml ');
// Pretražite sve vrijednosti čvora BRAND
$ brand = $ xml-> xpath ('/ PROIZVODI / PROIZVOD / MARKA');
// Ispis vrijednosti polja
jeka "

Popis imena robnih marki su:

";
foreach ($ brand kao $ name)
echo "$ ime
";

// Pretražite sve vrijednosti čvora PRODUCT
$ products = $ xml-> xpath ('/ PROIZVODI / PROIZVOD');
jeka "

Popis naziva i cijene proizvoda:

";
jeka "";
jeka "";
// Ispis vrijednosti polja
foreach ($ proizvoda kao $ proizvoda)
jeka "";

jeka "
ImeCijena
$ proizvod-> NAZIV $$ proizvod-> CIJENA
";
?>

Izlaz:

Sljedeći će se izlaz pojaviti nakon pokretanja skripte s poslužitelja.

Primjer-2: Pročitajte određene vrijednosti XML čvora na temelju uvjeta

Sljedeći primjer pokazuje kako čitati određene vrijednosti čvora na temelju stanja pomoću funkcije xpath (). Vrijednost puta, '/ PROIZVODI / PROIZVOD [CIJENA> 600]', pretražit će vrijednosti svih podređenih čvorova PROIZVOD čvor gdje je vrijednost CIJENA čvor je veći od 600. za svakoga petlja koristi se za ispis vrijednosti IME i CIJENA čvorovi.

// Stvaranje objekta za čitanje XML datoteke
$ xml = simplexml_load_file ('proizvodi.xml ');
// Pretražujte proizvode kod kojih je cijena veća od 600
$ products = $ xml-> xpath ('/ PROIZVODI / PROIZVOD [CIJENA> 600]');
jeka "

Popis naziva i cijene proizvoda kod kojih je cijena veća od 600:

";
jeka "";
jeka "";
// Ispis vrijednosti polja
foreach ($ proizvoda kao $ proizvoda)
jeka "";

jeka "
ImeCijena
$ proizvod-> NAZIV $$ proizvod-> CIJENA
";
?>

Izlaz:

Sljedeći će se izlaz pojaviti nakon pokretanja skripte s poslužitelja.

Primjer-3: Pročitajte određene vrijednosti XML čvora na temelju atributa

Sljedeći primjer pokazuje kako čitati određene vrijednosti čvora na temelju vrijednosti atributa određenog čvora XML dokumenta pomoću funkcije xpath (). Vrijednost puta, '/ PROIZVODI / PROIZVOD [@ category = ”Monitor”]' pretražit će vrijednosti svih podređenih čvorova proizvod čvor, gdje je vrijednost atributa kategorije Monitor. za svakoga petlja koristi se za ispis vrijednosti MARKA, IME, i CIJENA čvorovi.

// Stvaranje objekta za čitanje XML datoteke
$ xml = simplexml_load_file ('proizvodi.xml ');
// Pretražujte proizvode u kojima je vrijednost atributa kategorije 'Monitor'
$ products = $ xml-> xpath ('/ PROIZVODI / PROIZVOD [@ category = "Monitor"]');
jeka "

Popis marke, naziva i cijene proizvoda na temelju kategorije (Monitor):

";
jeka "";
jeka "";
// Ispis vrijednosti polja
foreach ($ proizvoda kao $ proizvoda)
jeka "";

jeka "
MarkaImeCijena
$ proizvod-> MARKA$ proizvod-> NAZIV $$ proizvod-> CIJENA
";
?>

Izlaz:

Sljedeći će se izlaz pojaviti nakon pokretanja skripte s poslužitelja.

Korištenje SimpleXMLElement razred:

Upotreba funkcije xpath () stvaranjem objekta klase SimpleXMLElement prikazana je u ovom dijelu ovog vodiča.

Primjer-4: Upotreba xpath () definiranjem XML sadržaja u varijabli

Sljedeći primjer pokazuje kako čitati vrijednosti čvorova XML dokumenta deklarirane u varijabli umjesto u datoteci. XML sadržaj pohranjen je u $ xml_data varijabilna. “/ Kupci / kupac” koristi se kao vrijednost argumenta funkcije xpath () za čitanje svih vrijednosti podređenih čvorova kupac čvor. Dalje, a za svakoga petlja koristi se za ispis vrijednosti Ime čvor. “/ Kupci / kupac [@ odjel = 'HR']” koristi se kao vrijednost argumenta druge funkcije xpath () za čitanje svih vrijednosti podređenih čvorova korisničkog čvora gdje vrijednost odjel atribut je HR. Sljedeći, a za svaku petlja koristi se za ispis vrijednosti e-mail čvor.

$ xml_data = <<

Doktor medicine. Mahbub
[e-pošta zaštićena]


Farhana Zaman
[e-pošta zaštićena]


XML;
// Definiraj objekt za čitanje XML podataka
$ xml = novi SimpleXMLElement ($ xml_data);
// Definirajte put za čitanje svih podataka o kupcima
$ kupaca = $ xml-> xpath ("/ kupci / kupac");
// Ispis imena kupaca
jeka "

Popis imena kupaca:

";
foreach ($ kupci kao $ kupac)
echo "$ kupac-> ime
";

// Definirajte put za čitanje svih podataka o kupcima HR odjela
$ kupci = $ xml-> xpath ("/ kupci / kupac [@ odjel = 'HR']");
// Ispis e-pošte kupaca
jeka "

E-adresa kupca HR odjela:

";
foreach ($ kupci kao $ kupac)
echo "$ kupac-> e-pošta
";

?>

Izlaz:

Sljedeći će se izlaz pojaviti nakon pokretanja skripte s poslužitelja.

Zaključak:

Dva različita načina korištenja funkcije xpath () za čitanje vrijednosti čvora XML dokumenta na temelju određene staze ili staze s uvjetom ili staze s vrijednošću atributa objašnjena su u ovom vodiču pomoću više primjera.

Kako prikazati brojač FPS-a u Linux igrama
Linux gaming dobio je velik poticaj kada je Valve najavio Linux podršku za Steam klijent i njihove igre 2012. godine. Od tada su mnoge AAA i indie igr...
Kako preuzeti i igrati Sid Meier's Civilization VI na Linuxu
Uvod u igru Civilization 6 moderan je pogled na klasični koncept predstavljen u seriji igara Age of Empires. Ideja je bila prilično jednostavna; započ...
Kako instalirati i igrati Doom na Linuxu
Uvod u Doom Serija Doom nastala je 90-ih nakon izlaska originalnog Dooma. To je bio trenutni hit i od tog vremena nadalje igraća serija dobila je broj...