XML Wrangler був створений з урахуванням досвіду розробника - ви можете читати будь-який тип XML-файлів, навіть зі складними просторами імен і навіть великими XML-файлами. Він також генеруватиме винятки, якщо XML недійсний!
XML Wrangler — це спрощена бібліотека PHP, розроблена для полегшення читання та запису XML. Використовуючи знайомі Laravel-подібні методи, цей пакет не залежить від фреймворку і може бути використаний у будь-якому PHP-проекті (>=v8.1
). XML Wrangler переповнений функціями, які роблять роботу з XML набагато приємнішою, ніж стандартний досвід роботи з PHP:
- Крапкова нотація: використання крапкової нотації для запиту до XML-документа
- Низьке використання пам'яті: XML Wrangler може обробляти читання великих XML-файлів
-
Laravel-like: методи, які ви можете використовувати, наприклад
sole
, , ,collect
,first
firstOrFail
тощо. - Ліниві методи: зчитування масивних XML-файлів і циклічне обходження кожного вузла в циклі
- Генерація XML: запис XML з використанням масивів
- Парсинг XML: надає функціональність для аналізу документів XML.
-
DTO: використовуйте
Element
елемент DTO для визначення атрибутів і просторів імен - Обробка помилок: Він має належну обробку помилок, на відміну від SimpleXML
- Запити XPath: підтримує запити XPath для вилучення даних з XML.
- Редагування та маніпулювання: дозволяє змінювати та маніпулювати даними XML.
- Простий API: пропонує простий API для роботи з XML.
- Підтримка просторів назв: обробляє простори імен XML.
Ви захочете перевірити readme , щоб дізнатися про все, що ви можете робити з цим пакунком, але ось приклад читання 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']
Щоб розпочати роботу з цим пакунком, ви можете отримати повні інструкції зі встановлення та використання на GitHub за адресою saloonphp/xml-wrangler на GitHub.