XPath ialah alat yang sangat berguna apabila bekerja dengan data XML menggunakan PHP. XPath ialah bahasa untuk mencari elemen dalam dokumen XML. Ia membantu pembangun mengekstrak data yang diperlukan daripada dokumen XML dengan cepat dan mudah.
Dalam artikel ini, kami akan memperkenalkan konsep asas XPath dan menerangkan secara terperinci cara menggunakan XPath dalam PHP. Kami akan menunjukkan cara menggunakan XPath untuk mengekstrak data daripada dokumen XML dan membina aplikasi PHP mudah untuk menunjukkan kuasa XPath.
Apakah itu XPath?
XPath ialah bahasa untuk mencari nod dalam dokumen XML. Ia menggunakan ungkapan laluan untuk menerangkan elemen dan atribut dalam dokumen. Ekspresi XPath adalah berdasarkan struktur dokumen XML dan digunakan untuk memilih nod atau satu set nod.
XPath ialah piawaian bebas, diseragamkan oleh W3C. Ekspresi XPath boleh digunakan dalam banyak bahasa pengaturcaraan, termasuk PHP.
Sintaks ungkapan XPath
Ekspresi XPath menggunakan ungkapan laluan untuk menerangkan elemen dan atribut XML. Ungkapan laluan terdiri daripada jujukan nod, pengendali hubungan dan predikat.
Berikut ialah beberapa sintaks asas ungkapan XPath:
Predikat dalam XPath membolehkan kami memilih nod tertentu. Berikut ialah beberapa contoh predikat:
XPath menyokong berbilang pengendali, seperti pengendali logik, predikat yang sepadan, pengendali aritmetik, dsb.
XPath untuk PHP
Dalam PHP, kita boleh menggunakan sambungan DOM untuk menghuraikan dokumen XML dan menggunakan ungkapan XPath untuk mencari dan mengubah suai nod dokumen.
Berikut ialah skrip PHP asas untuk memilih nod dalam dokumen XML:
$xml = new DOMDocument();
$xml->load("products. xml" );
$xpath = DOMXPath baharu($xml);
$nodes = $xpath->query("//name");
foreach ($nod sebagai $ nod) {
echo $node->nodeValue . "
";
}
Kod di atas membaca dokumen XML menggunakan kelas DOMDocument dan kemudian melaksanakan pertanyaan XPath menggunakan kelas DOMXPath. Dalam contoh ini kita menanyakan Semua namakan elemen dalam dokumen dan gelungkan nilai nod setiap elemen
Contoh XPath
Sekarang, kami akan menunjukkan contoh yang lebih kompleks menggunakan XPath untuk mengekstrak data daripada dokumen XML >
Kami akan menggunakan dokumen XML berikut, yang mengandungi beberapa maklumat buku:
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
<title lang="en">Harry Potter</title>
<author>J.K. Rowling</author>
<year>2005</year>
<price>29.99</price>
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
$xml->load .xml");
$nodes = $xpath->query("//book[@category='cooking']" );
$title = $xpath->query("title", $node)->item(0)->nodeValue; $price = $xpath->query("price", $node)->item(0)->nodeValue; echo "Title: $title, Price: $price
}
Atas ialah kandungan terperinci PHP dalam tindakan: Mengekstrak data daripada dokumen XML menggunakan XPath. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!