შინაარსზე გადასვლა

PHP/PHP SIMPLEXML

ვიკიწიგნებიდან
< PHP

რა არის SIMPLEXML?

[რედაქტირება]

SimpleXML არის ახალი PHP 5-ში. ეს არის ადვილი გზა ელემენტის ატრიბუტებისა და ტექსტის მისაღებად, თუ ჩვენ ვიცით XML დოკუმენტის სქემა.
DOM, ან Expat parser-თან შედარებით, SimpleXML უბრალოდ იღებს კოდის რამოდენიმე ხაზს, ელემენტიდან მონაცემთა ტექსტის წასაკითხად.
SimpleXML აკონვერტებს XML დოკუმენტს ობიექტში, ამის მსგავსად:

  • ელემენტები - კონვერტირებულნი არიან SimpleXMLElement ობიექტის თითო ატრიბუტად. როდესაც აქ არის ერთ დონეზე, ერთზე მეტი ელემენტი, ისინი განთავსდებიან მასშივში
  • ატრიბუტები - აქვთ წვდომა ასოციაციური მასივების გამოყენებაზე, სადაც ინდექსი შეესაბამება ატრიბუტის სახელს
  • ელემენტის მონაცემები - ტექსტური მონაცემები ელემენტებიდან კონვერტირებულნი არიან სტრინგში.

SimpleXML არის სწრაფი და ადვილი გამოსაყენებელი, როდესაც სრულდება ბაზური ამოცანები:

  • XML ფაილების წაკითხვა
  • XML სტრინგებიდან მონაცემთა ამოღება
  • ტექსტური კვანძების, ან ატრიბუტების რედაქტირება

SIMPLEXML-ის გამოყენება

[რედაქტირება]

ქვემოთ მოყვანილია XML ფაილი:

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

ვაკეთებთ შემდეგს:

  1. ჩვატვირთოთ XML ფაილი
  2. მივიღოთ პირველი ელემენტის სახელი
  3. შევქმნათ ციკლი, რომელიც გაეშვება თითოეულ კვანძზე, children() ფუნქციის გამოყენებით
  4. დავბეჭდოთ ელემენტის სახელი და მონაცემები თითოეული კვანძისათვის

მაგალითი

<?php
$xml = simplexml_load_file("test.xml");
echo $xml->getName() . "<br />";
foreach($xml->children() as $child)
  {
  echo $child->getName() . ": " . $child . "<br />";
  }
?>

კოდი დაბეჭდავს:

note
to: Tove
from: Jani
heading: Reminder
body: Don't forget me this weekend!