Simple XML si SimpleXML

By Stefania Rusu

Simple XML si SimpleXML

Scriind un articol despre SPL – Standard PHP Library am dat peste notiunea de SimpleXML. Prima sugestie este ca are legatura cu XML, darn u as fi ghicit direct la ce se refera. Am cautat pe Google si din greseala am scris numele cu un spatiu intre “simple” si “XML”. De aici mi-a venit ideea acestui articol, pentru a face o diferentiere intre doua notiuni asemanatoare. Astfel:

  1. Simple XML – reprezinta o variatie a limbajului XML care contine doar elemente. Toate atributele sunt convertite in elemente. Neavand attribute sau alte elemente precum declaratiile XML / DTD, acest limbaj permite utilizarea unui parser simplu si rapid. Acest format este compatibil si cu parserul XML obisnuit. Diferentele principale dintre XML si SimpleXML sunt:

- separarea dintre partea lexicala sic ea de gramatica care este mult mai uspr de parsat.

- nu exista nici o diferenta intre si , pot fi interschimbate

- documente pot fi incluse: pot exista declaratii in mojlocul unui document

- declararile standard de atribute sunt invalide pana la sfarsitul elementului current sau doctype.

- tratarea spatiilor goale este simplificata: o noua linie imediat inaintea caracterului “<” si o noua linie imediat dupa caracterul “>” sunt ignorate; niciun alt spatiu liber nu este ignorat de parser.

- Doar entitati de caractere sunt acceptate, nici un alt tip de entitate nu exista

- Structura acceptata a documentului poate fi specificata doar intr-un document separat

  1. SimpleXML – reprezinta o extensie a PHP care permite manipularea si utilizarea datelor din XML. Folosind SimpleXML numele elementelor dintr-un fisier XML sunt automat mapate proprietatilor unui obiect si acest proces are loc recursiv. Atributele sunt mapate acceselor la iteratori. Functiile SimpleXML sunt urmatoarele: addAttribute(), addChild(), asXML(), attributes(), children(), construct(), getDocNamespaces(), getName(), getNamespaces(), registerXPathNamespace(), xpath(), simplexml_import_dom, simplexml_load_file, simplexml_load_string.
 

0 comments so far.

Something to say?