XML Wrangler został zbudowany z myślą o doświadczeniu programistów - możesz odczytać dowolny typ pliku XML, nawet ze złożonymi przestrzeniami nazw, a nawet dużymi plikami XML. Spowoduje to również zgłoszenie wyjątków, jeśli kod XML jest nieprawidłowy!
XML Wrangler to uproszczona biblioteka PHP zaprojektowana, aby ułatwić odczytywanie i zapisywanie XML. Korzystając ze znanych metod podobnych do Laravela, pakiet ten jest niezależny od frameworka i może być używany w dowolnym projekcie PHP (>=v8.1
). XML Wrangler jest naszpikowany funkcjami, które sprawiają, że praca z XML jest znacznie przyjemniejsza niż gotowe doświadczenie PHP:
- Notacja kropkowa: używanie notacji kropkowej do wykonywania zapytań dotyczących dokumentu XML
- Niskie zużycie pamięci: XML Wrangler radzi sobie z odczytywaniem dużych plików XML
-
Laravel: metody, których możesz użyć, takie jak
sole
, , , ,first
firstOrFail
collect
itp. - Leniwe metody: Odczytuj ogromne pliki XML i zapętlaj każdy węzeł w pętli
- Generowanie XML: Pisanie XML przy użyciu tablic
- Analizowanie XML: Zapewnia funkcję analizowania dokumentów XML.
-
DTO: użyj
Element
elementu DTO, aby zdefiniować atrybuty i przestrzenie nazw - Obsługa błędów: Ma odpowiednią obsługę błędów w przeciwieństwie do SimpleXML
- Zapytania XPath: Obsługuje zapytania XPath w celu wyodrębnienia danych z kodu XML.
- Edycja i manipulacja: Umożliwia modyfikowanie i manipulowanie danymi XML.
- Prosty interfejs API: Oferuje prosty interfejs API do pracy z XML.
- Obsługa przestrzeni nazw: obsługuje przestrzenie nazw XML.
Będziesz chciał sprawdzić plik readme , aby dowiedzieć się o wszystkim, co możesz zrobić z tym pakietem, ale oto przykład czytania XML:
<?php
use Saloon\XmlWrangler\XmlReader;
$reader = XmlReader::fromString($xml);
// Retrieve all values as one simple array
$reader->values();
// ['breakfast_menu' => [['name' => '...'], ['name' => '...'], ...]
// Use dot-notation to find a specific element
$reader->value('food.0')->sole();
// ['name' => 'Belgian Waffles', 'price' => '$5.95', ...]
// Use the element method to get a simple Element DTO containing attributes and content
$reader->element('food.0')->sole(); // Element::class
// Use XPath to query the XML
$reader->xpathValue('//food[@bestSeller="true"]/name')->get();
// ['Belgian Waffles', 'Berry-Berry Belgian Waffles']
Aby rozpocząć pracę z tym pakietem, możesz uzyskać pełne instrukcje dotyczące instalacji i użytkowania na GitHub pod adresem saloonphp/xml-wrangler na GitHub.