MGpaNqZaMWVdNaJ6MaJ5NGZ7MTcsynIkynwbzD1c

Belajar PHP Dasar - Contoh Parser SAX

Jasa Candil Kuya - Belajar PHP Dasar Untuk Pemula Contoh Parser SAX,SAX parser …

Jasa Pembuatan Website
5932034103477481064

Belajar PHP Dasar - Contoh Parser SAX

2021-10-12
Belajar PHP Dasar - Contoh Parser SAX

Jasa Candil Kuya - Belajar PHP Dasar Untuk Pemula Contoh Parser SAX,SAX parser telah digunakan untuk mengurai file xml dan lebih baik untuk manajemen memori daripada sampel xml parser dan DOM. Itu tidak menyimpan data apa pun di memori sehingga dapat digunakan untuk file yang sangat besar. Contoh berikut akan menunjukkan cara mendapatkan data dari xml dengan menggunakan SAX API.

SAX.xml

XML harus sebagai berikut


<?xml version = "1.0" encoding = "utf-8"?>
<tutors>
   <course>
      <name>Android</name>
      <country>India</country>
      <email>contact@tutorialspoint.com</email>
      <phone>123456789</phone>
   </course>
   
   <course>
      <name>Java</name>
      <country>India</country>
      <email>contact@tutorialspoint.com</email>
      <phone>123456789</phone>
   </course>
   
   <course>
      <name>HTML</name>
      <country>India</country>
      <email>contact@tutorialspoint.com</email>
      <phone>123456789</phone>
   </course>
</tutors>

SAX.php

File php harus sebagai berikut


<?php
   //Reading XML using the SAX(Simple API for XML) parser 
   
   $tutors   = array();
   $elements   = null;
   
   // Called to this function when tags are opened 
   function startElements($parser, $name, $attrs) {
      global $tutors, $elements;
      
      if(!empty($name)) {
         if ($name == 'COURSE') {
            // creating an array to store information
            $tutors []= array();
         }
         $elements = $name;
      }
   }
   
   // Called to this function when tags are closed 
   function endElements($parser, $name) {
      global $elements;
      
      if(!empty($name)) {
         $elements = null;
      }
   }
   
   // Called on the text between the start and end of the tags
   function characterData($parser, $data) {
      global $tutors, $elements;
      
      if(!empty($data)) {
         if ($elements == 'NAME' || $elements == 'COUNTRY' ||  $elements == 'EMAIL' ||  $elements == 'PHONE') {
            $tutors[count($tutors)-1][$elements] = trim($data);
         }
      }
   }
   
   // Creates a new XML parser and returns a resource handle referencing it to be used by the other XML functions. 
   $parser = xml_parser_create(); 
   
   xml_set_element_handler($parser, "startElements", "endElements");
   xml_set_character_data_handler($parser, "characterData");
   
   // open xml file
   if (!($handle = fopen('sax.xml', "r"))) {
      die("could not open XML input");
   }
   
   while($data = fread($handle, 4096)) // read xml file {
      xml_parse($parser, $data);  // start parsing an xml document 
   }
   
   xml_parser_free($parser); // deletes the parser
   $i = 1;
   
   foreach($tutors as $course) {
      echo "course No - ".$i.'<br/>';
      echo "course Name - ".$course['NAME'].'<br/>';
      echo "Country - ".$course['COUNTRY'].'<br/>';
      echo "Email - ".$course['EMAIL'].'<br/>';
      echo "Phone - ".$course['PHONE'].'<hr/>'; 
      $i++; 
   }
?>

Ini akan menghasilkan hasil berikut

Belajar PHP Dasar - Contoh Parser SAX

Demikian Pembahasan Belajar PHP Dasar Contoh Parser SAX, Download Kumpulan Source Code Aplikasi PHP di Blog Code Candil Kuya, Semoga Bisa Bermanfaat,

Jasa Candil Kuya

Formulir Whatsapp×
Data Anda
Data Lainnya
Kirim Sekarang