All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Skip
\DOMNameSpaceNodeinNode::xpathmethod
- Fix
Reader::nextNodemethod
- Fixed regex for element name validation
- Fixed
Node::xpathmethod for node with child nodes
- Added optional parameter withoutRoot to
FlattenConfigto cast node to flatten (one-dimensional) array without root element node name
- Support only PHP 8.2+
- Make
Configinterface instead of readonly class
- Added
Node::xpathmethod using internally\DOMXPath - Added option to cast node to flatten (one-dimensional) array
- Added
DefaultConfigconfig class - Added
FullResponseConfigconfig class - Added
FlattenConfigconfig class
- Added
- Added option to create or add node from
\DOMNode
- Update readme
- Added option for
Readerto get/iterate nodes by its xpath.
- Added support for PHP 8.2
- Added optional parameter withNamespaces to
Reader::iterateNode()to split into XML fragments with valid namespaces
- Implement
\Arrayableinterface
- Support only PHP 8.1+
- Major refactor of all services
- Readonly
Configwithout getters and setters
- Interfaces for most classes
- Factories for XML builder and XML Reader
- Publicly available
Formatter::nodeToArraymethod
- Support "_" in elements name
- Added XML builder
- Fluent builder support
- Automatic (or forced) CDATA escaping
- Option to add XML fragments
- Automatic namespace usage
- XML validation with XSD schema
- Added memory efficient XML reader
- Reading XML files into Node instances
- Powerful cast to array method
- Iterate all nodes with given name