PHPackages                             rumd3x/php-persistence - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. rumd3x/php-persistence

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

rumd3x/php-persistence
======================

Store and retrieve data without a database.

1.4.0(7y ago)194411MITPHPPHP &gt;=7.0

Since Dec 3Pushed 7y ago1 watchersCompare

[ Source](https://github.com/rumd3x/php-persistence)[ Packagist](https://packagist.org/packages/rumd3x/php-persistence)[ RSS](/packages/rumd3x-php-persistence/feed)WikiDiscussions master Synced 4d ago

READMEChangelog (5)DependenciesVersions (6)Used By (1)

php-persistence
===============

[](#php-persistence)

Store persistent data and retrieve it without a database.

Installation
------------

[](#installation)

To install via composer just run

```
  composer require rumd3x/php-persistence
```

Usage
-----

[](#usage)

### Getting started

[](#getting-started)

Create an instance of the Persistence Engine passing a string with the driver name. Every driver is a totally different database. If data is getting too hard to manage you should probably be using more drivers.

```
use Rumd3x\Persistence\Engine;
$driver = 'test-db';
$db = new Engine($driver);
```

### Storing data

[](#storing-data)

You can store an instance of any object, arrays of mixed data, strings, etc.

When you retrieve your data, you'll get back exactly what you've stored.

When your data is stored, it's being put at the bottom of a stack.

```
$array = ['hello' => 'world', 1234, 1.666];
$db->store($array);
```

### Retrieving data

[](#retrieving-data)

The engine uses FIFO.

So when you retrieve your data, you'll be retrieving from the top of the stack.

If the driver has nothing stored in it, it will return *null*

Also, when you retrieve your data, it will be erased from the stack, so if you are using it again, make sure to store it back.

```
$data = $db->retrieve();
```

###  Health Score

29

—

LowBetter than 59% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity16

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity60

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~4 days

Total

5

Last Release

2704d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/3a9bb5384975b87cebcef2b7642e2b5b3b79d0a3be614fdcbbe008f5b6ca3c08?d=identicon)[edmur](/maintainers/edmur)

---

Top Contributors

[![rumd3x](https://avatars.githubusercontent.com/u/12579932?v=4)](https://github.com/rumd3x "rumd3x (10 commits)")

### Embed Badge

![Health badge](/badges/rumd3x-php-persistence/health.svg)

```
[![Health](https://phpackages.com/badges/rumd3x-php-persistence/health.svg)](https://phpackages.com/packages/rumd3x-php-persistence)
```

###  Alternatives

[atchondjo/geoip2country

A lightweight but powerful IP address lookup database solution to determine visitors country

344.1k](/packages/atchondjo-geoip2country)[bastinald/laravel-bootstrap-components

Laravel Bootstrap Blade components.

481.3k1](/packages/bastinald-laravel-bootstrap-components)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
