Configuration driver for CommonPHP that encodes and decodes the CommonPHP XML configuration format.
- PHP
^8.5 - PHP DOM extension
ext-dom comphp/config:^0.3
Once this package is available through your Composer repositories, install it with:
composer require comphp/config-xml<?php
use CommonPHP\Drivers\Config\XML\XmlConfigurationDriver;
$driver = new XmlConfigurationDriver();
$config = [
'app' => 'demo',
'debug' => true,
'database' => [
'host' => 'localhost',
],
];
$xml = $driver->encode($config);
$decoded = $driver->decode($xml);
$driver->write(__DIR__ . '/config.xml', $config);
$fromFile = $driver->read(__DIR__ . '/config.xml');This package uses the CommonPHP XML config format with a <config> root and typed <entry> elements. It is not an arbitrary XML-to-array converter. DOCTYPE declarations are rejected.
Read, write, parse, validation, and unsupported value failures throw CommonPHP config exceptions such as ConfigReadException, ConfigWriteException, ConfigValidationException, or ConfigException.
MIT. See LICENSE.md.