Εκμάθηση PHP XML: Δημιουργία, ανάλυση και ανάγνωση με παράδειγμα

Πίνακας περιεχομένων:

Anonim

Τι είναι το XML;

Το XML είναι το αρκτικόλεξο για την επεκτάσιμη γλώσσα σήμανσης.

Το XML χρησιμοποιείται για τη δομή, την αποθήκευση και τη μεταφορά δεδομένων από το ένα σύστημα στο άλλο.

Το XML είναι παρόμοιο με το HTML.

Χρησιμοποιεί ετικέτες ανοίγματος και κλεισίματος.

Σε αντίθεση με το HTML, το XML επιτρέπει στους χρήστες να ορίζουν τις δικές τους ετικέτες.

Σε αυτό το σεμινάριο, θα μάθετε-

  • Τι είναι το DOM;
  • Αναλυτές XML
  • Γιατί να χρησιμοποιήσετε το XML;
  • Παράδειγμα εγγράφου XML
  • Πώς να διαβάσετε XML χρησιμοποιώντας PHP
  • Πώς να δημιουργήσετε ένα έγγραφο XML χρησιμοποιώντας PHP

Τι είναι το DOM;

Το DOM είναι το αρκτικόλεξο του Document Object Model.

Πρόκειται για διαγώνια πλατφόρμα και ουδέτερο γλωσσικό πρότυπο που καθορίζει τον τρόπο πρόσβασης και χειρισμού δεδομένων σε.

  • HTML
  • XHTML
  • XML

Το DOM XML χρησιμοποιείται για πρόσβαση και χειρισμό εγγράφων XML. Βλέπει το έγγραφο XML ως δομή δέντρου.

Αναλυτές XML

Ένα πρόγραμμα ανάλυσης XML είναι ένα πρόγραμμα που μεταφράζει το έγγραφο XML σε αντικείμενο XML Document Object Model (DOM).

Το αντικείμενο XML DOM μπορεί στη συνέχεια να χειριστεί χρησιμοποιώντας JavaScript, Python και PHP κ.λπ.

Η λέξη-κλειδί CDATA που είναι το ακρωνύμιο για (Unparsed) Character Data χρησιμοποιείται για να αγνοήσει ειδικούς χαρακτήρες όπως "<,>" κατά την ανάλυση ενός εγγράφου XML.

Γιατί να χρησιμοποιήσετε το XML;

  • Οι υπηρεσίες Ιστού όπως το SOAP και το REST χρησιμοποιούν μορφή XML για την ανταλλαγή πληροφοριών. Μαθαίνοντας τι είναι το XML και πώς λειτουργεί θα σας προσφέρει ανταγωνιστικό πλεονέκτημα ως προγραμματιστής, καθώς οι σύγχρονες εφαρμογές κάνουν χρήση των διαδικτυακών υπηρεσιών.
  • Τα έγγραφα XML μπορούν να χρησιμοποιηθούν για την αποθήκευση ρυθμίσεων διαμόρφωσης μιας εφαρμογής
  • Σας επιτρέπει να δημιουργήσετε τις δικές σας προσαρμοσμένες ετικέτες που το καθιστούν πιο ευέλικτο.

Παράδειγμα εγγράφου XML

Ας υποθέσουμε ότι αναπτύσσετε μια εφαρμογή που λαμβάνει δεδομένα από μια υπηρεσία Ιστού σε μορφή XML.

Ακολουθεί το δείγμα του πώς φαίνεται το έγγραφο XML.

Joe Paul
CEOTasha Smith
Finance Manager

ΕΔΩ,

  • "" Καθορίζει την έκδοση xml που θα χρησιμοποιηθεί και την κωδικοποίηση
  • Το "" είναι το βασικό στοιχείο.
  • Τα " ... " είναι τα θυγατρικά στοιχεία διαχείρισης και πωλήσεων αντίστοιχα.

Πώς να διαβάσετε XML χρησιμοποιώντας PHP

Ας γράψουμε τώρα τον κωδικό που θα διαβάσει το έγγραφο XML των υπαλλήλων και θα εμφανίσει τα αποτελέσματα σε ένα πρόγραμμα περιήγησης ιστού. Ευρετήριο.php


Employees Listing

';$list = $xml->record;for ($i = 0; $i < count($list); $i++) {echo 'Man no: ' . $list[$i]->attributes()->man_no . '
';echo 'Name: ' . $list[$i]->name . '
';echo 'Position: ' . $list[$i]->position . '

';}?>

ΕΔΩ,

  • "$ Xml = simplexml_load_file ('karyawan.xml');" χρησιμοποιεί τη συνάρτηση simplexml_load_file για να φορτώσει το όνομα αρχείου karyawan.xml και να αντιστοιχίσει τα περιεχόμενα στη μεταβλητή πίνακα $ xml.
  • $ List = $ xml-> εγγραφή; " λαμβάνει τα περιεχόμενα του κόμβου εγγραφής.
  • “For ($ i = 0; $ i
  • "$ List [$ i] -> χαρακτηριστικά () -> man_no;" διαβάζει το χαρακτηριστικό man_no του στοιχείου
  • $ List [$ i] -> όνομα; " διαβάζει την τιμή του στοιχείου θυγατρικού ονόματος
  • "$ List [$ i] -> θέση;" διαβάζει την τιμή του θυγατρικού στοιχείου θέσης

Δοκιμή της εφαρμογής μας

Υποθέτοντας ότι έχετε αποθηκεύσει το αρχείο index.php στο φάκελο phptus / xml, μεταβείτε στη διεύθυνση URL http: //localhost/phptuts/xml/index.php

Πώς να δημιουργήσετε ένα έγγραφο XML χρησιμοποιώντας PHP

Θα εξετάσουμε τώρα πώς να δημιουργήσουμε ένα έγγραφο XML χρησιμοποιώντας PHP.

Θα χρησιμοποιήσουμε το παραπάνω παράδειγμα στο διάγραμμα δέντρων DOM.

Ο ακόλουθος κώδικας χρησιμοποιεί το ενσωματωμένο PHOM κλάσης DOMDocument για τη δημιουργία ενός εγγράφου XML.

encoding = 'utf-8';$dom->xmlVersion = '1.0';$dom->formatOutput = true;$xml_file_name = 'movies_list.xml';$root = $dom->createElement('Movies');$movie_node = $dom->createElement('movie');$attr_movie_id = new DOMAttr('movie_id', '5467');$movie_node->setAttributeNode($attr_movie_id);$child_node_title = $dom->createElement('Title', 'The Campaign');$movie_node->appendChild($child_node_title);$child_node_year = $dom->createElement('Year', 2012);$movie_node->appendChild($child_node_year);$child_node_genre = $dom->createElement('Genre', 'The Campaign');$movie_node->appendChild($child_node_genre);$child_node_ratings = $dom->createElement('Ratings', 6.2);$movie_node->appendChild($child_node_ratings);$root->appendChild($movie_node);$dom->appendChild($root);$dom->save($xml_file_name);echo "$xml_file_name has been successfully created";?>

ΕΔΩ,

  • "$ Dom = νέο DOMDocument ();" δημιουργεί μια παρουσία κλάσης DOMDocument.
  • "$ Dom-> encoding = 'utf-8';" ορίζει την κωδικοποίηση του εγγράφου σε utf-8
  • "$ Dom-> xmlVersion = '1.0';" καθορίζει τον αριθμό έκδοσης 1.0
  • "$ Dom-> formatOutput = true;" διασφαλίζει ότι η έξοδος είναι καλά μορφοποιημένη
  • "$ Root = $ dom-> createElement ('Movies');" δημιουργεί τον ριζικό κόμβο που ονομάζεται Ταινίες
  • "$ Attr_movie_id = νέο DOMAttr ('movie_id', '5467');" ορίζει το χαρακτηριστικό αναγνωριστικού ταινίας του κόμβου Ταινίες
  • Το "$ child_node_element_name = $ dom-> createElement ('ElementName', 'ElementValue')" δημιουργεί τον θυγατρικό κόμβο του κόμβου Ταινίες. Το ElementName καθορίζει το όνομα του στοιχείου π.χ. Τίτλος. Το ElementValue ορίζει την τιμή θυγατρικού κόμβου, π.χ. Η καμπάνια.
  • "$ Root-> appendChild ($ movie_node);" προσαρτά τα στοιχεία movie_node στον ριζικό κόμβο Ταινίες
  • "$ Dom-> appendChild ($ root);" επισυνάπτει τον ριζικό κόμβο στο έγγραφο XML.
  • "$ Dom-> save ($ xml_file_name);" αποθηκεύει το αρχείο XML στον ριζικό κατάλογο του διακομιστή ιστού.
  • "Echo ''. $ xml_file_name. " δημιουργήθηκε με επιτυχία"; " δημιουργεί τον σύνδεσμο προς το αρχείο XML.

Δοκιμή της εφαρμογής μας

Υποθέτοντας ότι έχετε αποθηκεύσει το αρχείο create_movies_list στο φάκελο phptuts / xml, μεταβείτε στη διεύθυνση URL http: //localhost/phptuts/xml/create_movies_list.php

Κάντε κλικ στο σύνδεσμο movies_list_xml

Περίληψη

  • Το XML είναι το αρκτικόλεξο για την επεκτάσιμη γλώσσα σήμανσης
  • Το XML μπορεί να χρησιμοποιηθεί για ανταλλαγή πληροφοριών μεταξύ συστημάτων ή ρυθμίσεων διαμόρφωσης καταστήματος μιας εφαρμογής κ.λπ.
  • Το DOM είναι το αρκτικόλεξο του Document Object Model. Το XML DOM προβάλλει το έγγραφο XML ως δομή δέντρου
  • Το XML Parser είναι ένα πρόγραμμα που μεταφράζει XML και XML έγγραφο σε DOM δέντρο-δομή όπως το έγγραφο.
  • Το CDATA χρησιμοποιείται για να αγνοεί ειδικούς χαρακτήρες κατά την ανάλυση εγγράφων XML.
  • Η PHP χρησιμοποιεί το simplexml_load_file για να διαβάσει έγγραφα XML και να επιστρέψει τα αποτελέσματα ως αριθμητικός πίνακας
  • PHP DOMDocument class για τη δημιουργία αρχείων XML.