Download the PHP package temant/settings-manager without Composer
On this page you can find all versions of the php package temant/settings-manager. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Table of contents
Download temant/settings-manager
More information about temant/settings-manager
Files in temant/settings-manager
Download temant/settings-manager
More information about temant/settings-manager
Files in temant/settings-manager
Vendor temant
Package settings-manager
Short Description A flexible, type-safe settings management library for PHP powered by Doctrine ORM.
License MIT
Package settings-manager
Short Description A flexible, type-safe settings management library for PHP powered by Doctrine ORM.
License MIT
Please rate this library. Is it a good library?
Informations about the package settings-manager
Temant Settings Manager
A modern, type-safe settings management library for PHP applications powered by Doctrine ORM. Persist key-value settings to any database with automatic type detection, in-memory caching, group organisation, bulk operations, and import/export.
Features
- 8 data types —
string,integer,boolean,float,json,array,datetime, andauto(auto-detect) - In-memory cache — subsequent reads for the same key skip the database
- Groups & descriptions — organise settings logically and document them inline
- Bulk operations —
setMany(),removeMany(),clear() - Search & filter — substring search and group-based filtering
- Import / Export — JSON and array formats, round-trip safe
- Fluent interface — chain calls:
$manager->set(...)->set(...)->remove(...) - Countable —
count($manager)returns the total number of settings - Doctrine ORM 3 — works with MySQL, PostgreSQL, and SQLite
- PHPStan max level — fully statically analysed
- 65 tests, 141 assertions — comprehensive test suite
Installation
Requires PHP 8.5+ and Doctrine ORM 3.
Quick Start
Usage Guide
Setting Values
Retrieving Values
Updating Values
Removing Values
Bulk Operations
Search & Filter
Counting
Import & Export
Default Settings
Seed settings on first run — existing values are never overwritten:
Custom Table Name
Cache Management
The manager caches entities in memory. If you modify the settings table externally:
Data Types
| SettingType | PHP Type | Storage Format | Example |
|---|---|---|---|
STRING |
string |
As-is | 'hello' |
INTEGER |
int |
String cast | 42 |
BOOLEAN |
bool |
'true' / 'false' |
true |
FLOAT |
float |
String cast | 3.14 |
JSON |
array (assoc) |
JSON string | '{"key":"val"}' |
ARRAY |
array |
JSON encoded | ['a', 'b'] |
DATETIME |
DateTimeImmutable |
ISO 8601 | new DateTimeImmutable |
AUTO |
(detected) | (varies) | (any of the above) |
Exceptions
| Exception | When |
|---|---|
SettingAlreadyExistsException |
set() with allowUpdate: false on existing key |
SettingNotFoundException |
update() / remove() on missing key |
SettingTypeMismatchException |
Value incompatible with expected type |
SettingsImportExportException |
Import/export failure (bad JSON, missing keys) |
SettingsTableInitializationException |
Database table creation failure |
Running Tests
Static Analysis
Run Both
Contributing
Contributions are welcome! Feel free to submit issues or pull requests.
License
MIT
All versions of settings-manager with dependencies
PHP Build Version
Package Version
The package temant/settings-manager contains the following files
Loading the files please wait ...