• Время чтения ~1 мин
  • 03.11.2023

XML Wrangler был создан с учетом опыта разработчика - вы можете читать XML-файлы любого типа, даже со сложными пространствами имен и даже с большими XML-файлами. Он также будет выдавать исключения, если XML недействителен!

XML Wrangler - это упрощенная библиотека PHP, разработанная для упрощения чтения и записи XML. Используя знакомые Laravel-подобные методы, этот пакет не зависит от фреймворка и может быть использован в любом PHP-проекте (>=v8.1). XML Wrangler наполнен функциями, которые делают работу с XML гораздо более приятной, чем с готовым PHP:

  • Точечная нотация: Использование точечной нотации для запроса XML-документа
  • Низкое использование памяти: XML Wrangler может работать с чтением больших XML-файлов
  • Laravel-подобные: методы, которые вы можете использовать, такие как sole, , first, , firstOrFailcollectи т. д.
  • Ленивые методы: чтение массивных XML-файлов и циклический перебор каждого узла в цикле
  • Генерация XML: Запись XML с использованием массивов
  • XML Parsing: Предоставляет функциональные возможности для синтаксического анализа XML-документов.
  • DTO: Element используйте элемент DTO для определения атрибутов и пространств имен
  • Обработка ошибок: Имеет правильную обработку ошибок, в отличие от SimpleXML
  • XPath Queries: Поддерживает 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.

Comments

No comments yet
Yurij Finiv

Yurij Finiv

Full stack

Про мене

Professional Fullstack Developer with extensive experience in website and desktop application development. Proficient in a wide range of tools and technologies, including Bootstrap, Tailwind, HTML5, CSS3, PUG, JavaScript, Alpine.js, jQuery, PHP, MODX, and Node.js. Skilled in website development using Symfony, MODX, and Laravel. Experience: Contributed to the development and translation of MODX3 i...

Об авторе CrazyBoy49z
WORK EXPERIENCE
Контакты
Ukraine, Lutsk
+380979856297