Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Penghurai XML terbaik dalam PHP

Penghurai XML terbaik dalam PHP

王林
王林asal
2023-05-23 08:41:091621semak imbas

Dalam membangunkan aplikasi web, menghuraikan data XML adalah tugas penting. Sebagai bahasa pengaturcaraan yang popular, PHP menyediakan pelbagai cara untuk memproses dan menghuraikan data XML. Artikel ini akan membincangkan ciri dan penggunaan beberapa penghurai XML terbaik dalam PHP untuk membantu anda memilih penghurai yang paling sesuai semasa proses pembangunan.

1. Penghurai DOM

Penghurai DOM dalam PHP ialah penghurai berdasarkan struktur pokok. Ia memuatkan keseluruhan dokumen XML ke dalam ingatan, mencipta pepohon DOM, dan kemudian mengakses data XML dengan merentasi pepohon ini. Penghurai DOM agak fleksibel, boleh menambah, memadam, mengubah suai dan bertanya nod dalam pepohon dan menyokong pertanyaan XPath.

  1. Buat penghurai DOM

Langkah pertama untuk menggunakan penghurai DOM untuk menghuraikan dokumen XML ialah mencipta objek DOM, kodnya adalah seperti berikut:

$doc = new DOMDocument();
  1. Muat dokumen XML

Gunakan objek DOM untuk memuatkan dokumen XML, kodnya adalah seperti berikut:

$doc->load('file.xml');
  1. Melintasi pokok DOM

Gunakan objek DOM dari akar Nod mula melintasi pepohon DOM, kodnya adalah seperti berikut:

$root = $doc->documentElement;
// 遍历子节点
foreach ($root->childNodes as $node) {
    // 处理节点
    // ...
}
  1. Dapatkan atribut nod dan kandungan teks

Menggunakan objek nod DOM anda boleh mendapatkan atribut nod dan kandungan teks dengan mudah, kodnya adalah seperti berikut :

// 获取节点属性
$attr = $node->attributes->getNamedItem('id')->nodeValue;
// 获取节点文本内容
$text = $node->nodeValue;
  1. Pertanyaan XPath

Penghurai DOM juga menyokong Pertanyaan XPath, kodnya adalah seperti berikut:

$xpath = new DOMXPath($doc);
$nodes = $xpath->query('//book[author="Jack"]');

2. SimpleXML parser

SimpleXML parser ialah penghurai berasaskan objek yang boleh menukar dokumen XML kepada objek atau tatasusunan PHP untuk memudahkan manipulasi data. Untuk data XML mudah, penghurai SimpleXML sangat mudah digunakan.

  1. Buat penghurai SimpleXML

Gunakan kelas SimpleXMLElement untuk mencipta objek SimpleXML Kodnya adalah seperti berikut:

rreee
  1. Akses XML. data

Sangat mudah untuk menggunakan objek SimpleXML untuk mengakses data XML Kodnya adalah seperti berikut:

$xml = new SimpleXMLElement($xmlstring);
  1. Data XML Operasi
Ia juga sangat mudah untuk menggunakan objek SimpleXML untuk mengendalikan data XML, seperti menambah nod A, kodnya adalah seperti berikut:

$title = $xml->book[0]->title;
$author = $xml->book[0]->author;

3. Penghurai XMLReader

Penghurai XMLReader ialah peristiwa- penghurai berasaskan, yang membaca dokumen XML baris demi baris dan mencetuskan pelbagai acara Ia menyokong Penstriman dokumen XML yang besar. Berbanding dengan penghurai DOM dan penghurai SimpleXML, penghurai XMLReader menggunakan lebih sedikit memori dan lebih pantas.

    Buat penghurai XMLReader
Gunakan kelas XMLReader untuk mencipta objek XMLReader Kodnya adalah seperti berikut:

rreee

    Buka dokumen XML.
Gunakan objek XMLReader untuk membuka dokumen XML, kodnya adalah seperti berikut:

$newnode = $xml->addChild('book');
$newnode->addChild('title', 'PHP编程');
$newnode->addChild('author', 'Tom');

    Baca dokumen XML baris demi baris
Gunakan objek XMLReader untuk membaca dokumen XML baris demi baris, kod Seperti berikut:

$reader = new XMLReader();

    Dapatkan data nod
Gunakan objek XMLReader untuk mendapatkan data nod, kod adalah seperti berikut:

$reader->open('file.xml');

    Ciri lanjutan
Penghurai XMLReader juga menyediakan banyak ciri lanjutan, seperti menyokong pengesahan Skema, pemprosesan ruang nama, pengekodan Unikod, dsb. kod adalah seperti berikut:

while ($reader->read()) {
    // 处理事件
    // ...
}

Ringkasan

PHP menyediakan pelbagai Parser Berbeza mempunyai ciri tersendiri dalam cara menghuraikan data XML, dan anda boleh memilih mengikut situasi tertentu. Jika data XML yang anda proses adalah kompleks, mungkin lebih sesuai untuk menggunakan penghurai DOM jika anda memproses data XML yang mudah, mungkin lebih mudah untuk menggunakan penghurai SimpleXML jika anda memproses dokumen XML yang besar; -penghuraian prestasi, mungkin lebih sesuai untuk menggunakan penghurai XMLReader yang sangat baik. Apabila memilih parser, faktor seperti prestasi, penggunaan memori, fleksibiliti, kemudahan penggunaan, dsb. perlu dipertimbangkan untuk mendapatkan hasil terbaik semasa proses pembangunan.

Atas ialah kandungan terperinci Penghurai XML terbaik dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn