phpolar/sqlite-storage

Adds support for storing data in SQLite databases.

Installs: 36

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

pkg:composer/phpolar/sqlite-storage

1.1.2 2025-12-04 23:52 UTC

This package is auto-updated.

Last update: 2025-12-04 23:54:51 UTC


README

Adds support for SQLite3 storage in your application.

PHPolar logo

Coverage Status Badge Latest Stable Version Total Downloads License PHP Version Require Weekly Check

Website

Quick start

# create an example application

composer require phpolar/sqlite-storage

Objectives

  1. Keep project small. See thresholds
  2. Automatically load and persist data

Note For more details see the acceptance tests results

Example 1

$sqliteStorage = new SqliteStorage(
    connection: $connection,
    tableName: "table_name",
    typeClassName: Person::class,
);

$sqliteStorage->save($item1->id, $item);
$sqliteStorage->replace($updatedItem->id, $updatedItem);
$sqliteStorage->remove($item2->id);

$item3 = $sqliteStorage->find("id3")
    ->orElse(static fn() => new NotFound())
    ->tryUnwrap();

$allItems = $sqliteStorage->findAll();

Example Class for Items in Storage

use Phpolar\Phpolar\AbstractModel;

class Person extends AbstractModel
{
    #[PrimaryKey]
    #[Hidden]
    public string $id;

    public string $firstName;

    public string $lastName;

    public string $address1;

    public string $address2;

    public function getPrimaryKey(): string
    {
        return $id;
    }
}

Thresholds

Module Source Code Size * Memory Usage Required
phpolar/sqlite-storage 9 kB 150 kB x
  • Note: Does not include comments.