定制 alexanderk23/hybrid-xml-parser 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

alexanderk23/hybrid-xml-parser

Composer 安装命令:

composer require alexanderk23/hybrid-xml-parser

包简介

Simple class to parse huge XML files in a memory-efficient way

关键字:

README 文档

README

Класс для разбора больших XML-файлов без загрузки их в память. Схема работы проста: файл проходится XMLReader'ом, для каждого интересующего нас элемента XML вызывается предварительно заданный обработчик, которому в качестве аргумента передаётся содержимое этого элемента в виде SimpleXMLElement.

Выглядит это как-то так:

<?php
	$parser = new HybridXMLParser;
	$parser
		// Вешаем обработчик на путь в XML
		->bind('/FictionBook/description/title-info/author', function(\SimpleXMLElement $author, $parser) {
			print_r($author);
		})
		// И ещё один
		->bind('/FictionBook/description/title-info/translator', function(\SimpleXMLElement $translator, $parser) {
			print_r($translator);
			// Так можно немедленно завершить парсинг
			$parser->stop(); 
		})
		// Запускаем
		->process('somebook.fb2')
		->process('anotherbook.fb2');

В качестве обработчика можно указывать всё, для чего is_callable() возвращает true.

统计信息

  • 总下载量: 3.76k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 4
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 4
  • Watchers: 1
  • Forks: 2
  • 开发语言: PHP

其他信息

  • 授权协议: WTFPL
  • 更新时间: 2013-02-19