Download the PHP package kiwilan/php-xml-reader without Composer
On this page you can find all versions of the php package kiwilan/php-xml-reader. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download kiwilan/php-xml-reader
More information about kiwilan/php-xml-reader
Files in kiwilan/php-xml-reader
Package php-xml-reader
Short Description PHP package to read XML with nice API.
License MIT
Homepage https://github.com/kiwilan/php-xml-reader
Informations about the package php-xml-reader
PHP XML Reader
PHP package to read XML with nice API, heavily inspired by stackoverflow answer
.
About
PHP have native functions to read XML files with SimpleXML
, but it's not easy to use and not very flexible. This package offer to read XML files as array, with a simple and flexible API.
Requirements
- PHP version >= 8.0
Installation
You can install the package via composer:
Usage
You can read XML from path or from content.
mapContent
:boolean
If a key has only@content
key, return only the value of@content
. Default:true
.failOnError
:boolean
Throw exception if XML is invalid. Default:true
.
Methods
Method | Description | Type |
---|---|---|
$xml->getRoot() |
Value of root element | ?string |
$xml->getRootNS() |
Namespaces of root element | string[] |
$xml->getRootAttributes() |
Attributes of root element | array<string, mixed> |
$xml->getRootAttributes('key'); |
Value of key attribute of root element |
mixed |
$xml->getVersion(); |
XML version | ?string |
$xml->getEncoding(); |
XML encoding | ?string |
$xml->isValidXml(); |
Check if XML is valid | bool |
$xml->getPath(); |
Path of XML file | ?string |
$xml->getFilename(); |
Filename of XML file | ?string |
$xml->getConverter(); |
Converter used to convert XML to array | \Kiwilan\XmlReader\XmlConverter |
$xml->save('path/to/file.xml'); |
Save XML file | bool |
$xml->toArray(); |
Convert XML to array | array<string, mixed> |
$xml->__toString(); |
Convert XML to string | string |
Advanced methods
Method | Description | Type | Options |
---|---|---|---|
$xml->getContents() |
XML as multidimensional array | array<string, mixed> |
|
$xml->find('key') |
Find key will return first value where that contain key | array<string, mixed> |
strict , content , attributes |
$xml->search('key') |
Search will return all values that contain key | mixed |
|
$xml->extract(...keys) |
Extract metadata key, if not found return null |
mixed |
|
XmlReader::parseContent(key) |
Parse content of entry | mixed |
|
XmlReader::parseAttributes(key) |
Parse attributes of entry | array<string, mixed> or null |
Basic usage
XML as multidimensional array from root
(safe).
Basic usage.
Find
Find key will return first value where key that contain title
(safe).
Find key will return first value where key is dc:title
(safe)
Find key will return first value where key that contain dc:title
and return @content
(safe)
Find key will return first value where key contain dc:creator
and return @attributes
(safe)
Search
Search will return all values that contain dc
(safe)
Extract
Extract metadata
key, if not found return null (safe)
Extract metadata
and dc:title
keys (safe)
Get content
If you want to extract only @content
you could use parseContent()
method, if you want to extract only @attributes
you could use parseAttributes()
method.
Extract dc:title
key and return @content
(safe)
Extract dc:creator
key and return @content
(safe)
Extract dc:creator
key and return @attributes
(safe)
Testing
Changelog
Please see CHANGELOG for more information on what has changed recently.
Credits
spatie
forspatie/package-skeleton-php
License
The MIT License (MIT). Please see License File for more information.