mwx / lib
metaworx PHP base library: arrays, strings, streams, files, debug helpers
dev-master
2026-08-27 11:23 UTC
Requires
- php: ^8.2
- ext-json: *
- symfony/filesystem: ^5.2 || ^6.0 || ^7.0
- symfony/property-access: ^7.3
- symfony/stopwatch: ^7.3
- symfony/yaml: ^7.3
This package is auto-updated.
Last update: 2026-08-27 10:31:55 UTC
README
Dependency-light PHP base library. Owns the mwx\ namespace root —
every sub-namespace except mwx\Tools\ (which belongs to the
mwx/tools package family).
Contents
| Namespace | What it holds |
|---|---|
mwx\ | Options, Utils, Serializer, WeakList, NotFound sentinel, magic getter/setter traits |
mwx\Arrays\ | ArrayHelper (merge, filter, path access), ArrayAccess trait/interfaces, Replace/UnsetArrayValue |
mwx\Strings\ | StringHelper |
mwx\Streams\ | Stream classes and filters, StdIO |
mwx\Files\ | FileInfo, the Pathable* family, FilterDefinition |
mwx\Enums\ | Enum framework: EnumArray variants, dynamic enums, EnumExtensionTrait |
mwx\Debug\ | Trace, InaccessibleMethodArg |
mwx\Exceptions\ | Pure path/argument/config exceptions |
Dependencies
ext-json and the symfony components yaml, filesystem,
property-access, stopwatch. Slimming the last two (used only by Utils)
is an open task. The AGPL-encumbered serialized-data stdin filter lives in
the opt-in mwx/serialized package, keeping this package cleanly MIT.
Install
Pre-publication: via the monorepo's path repository (see the repository root
README). Later: composer require mwx/lib.
MIT license.