vardumper / dom-orm
There is no license information available for the latest version (v1.4.0) of this package.
DOMDocument Object Relational Mapper (ORM)
v1.4.0
2026-04-25 11:32 UTC
Requires
- php: >=8.3 <8.6
- ext-dom: *
- ext-json: *
- ext-libxml: *
- ext-mbstring: *
- ext-xml: *
- czproject/git-php: ^4.6
- league/config: ^1.2
- league/flysystem: ^3.33.0
- mnapoli/silly: ^1.9.1
- ramsey/collection: ^2.1.1
- ramsey/uuid: ^4.9.2
- symfony/serializer: ^5.4 || ^6.4 || ^7.4 || ^8.0.8
- symfony/yaml: ^5.4 || ^6.4 || ^7.4 || ^8.0.8
Requires (Dev)
- brainmaestro/composer-git-hooks: @dev
- fakerphp/faker: ^1.24.1
- friendsofphp/php-cs-fixer: ^3.95.1
- pestphp/pest: ^4.6.2
- phpmd/phpmd: ^2.15
- phpstan/phpstan: ^1.12.33
- phpunit/phpunit: ^12.5.22
- rector/swiss-knife: ^2.3.5
- symplify/easy-coding-standard: ^12.6.2
This package is auto-updated.
Last update: 2026-04-26 09:12:21 UTC
README
DOM ORM is a lightweight, zero-setup, XML-based persistence layer for small datasets in PHP projects. It stores entities in a single XML document, so you can start without a database server.
Features
- A very lightweight approach to persisting data into a single XML file.
- Supports exporting to headless-friendly formats such as JSON, YAML, XML
- Supports Versioning in Git or Mercurial out of the box.
- Handles concurrency with flock() when used with local file strage
- Supports local and remote storage via Flysystem (S3, Azure, Google Cloud, (S)FTP, etc.).
- Ships with a built-in in-memory Flysystem adapter for process-local XML storage.
- Supports one-to-one, one-to-many, many-to-one, and many-to-many patterns.
- Supports AES-256-GCM field-level encryption via
#[Sensitive]with searchable HMAC hashes. - Supports schema evolution (rename/remove fragments) via
#[FragmentMap]and CLI commands. - Fully tested (Unit, Integration)
Installation
composer require vardumper/dom-orm
Documenation
Extensive Documentation has been made available here.