
# Installation

```bash
composer require storh/storh
```

## Krav

- PHP 8.2 eller nyere
- `ext-json`
- et lokalt eller monteret filsystem med semantik for atomisk omdøbning i en mappe (alle almindelige lokale diske opfylder dette)

storh har ingen runtime-afhængigheder i Composer. To udvidelser låser op for valgfrie funktioner, hvis de er tilgængelige: `ext-pdo` eller `ext-mysqli` til [SQL-spejle](https://storh.inline0.dev/da/docs/sql-mirror), og `ext-apcu` til den delte `Cache::apcu()`-backend, som ikke cacher noget, når APCu ikke er tilgængelig.

## Vælg en lagerrod

Brug en mappe, som din PHP-proces kan oprette, læse, skrive i, omdøbe filer i og slette fra:

```php
use Storh\StorageRoot;

$root = StorageRoot::resolve(__DIR__ . '/var/storage', 'app');
```

`StorageRoot` normaliserer kun den angivne sti og renser navnerummet, så det bliver et sikkert mappenavn. Den undersøger ikke værtsapplikationen, læser ikke globale konstanter og kræver ikke en frameworkadapter. Motorerne opretter deres samlingsmapper under roden ved første brug.

## Kontrollér, at det virker

```php
$docs = new Storh\DocStore($root, 'smoke');
$record = $docs->put(['ok' => true]);

var_dump($docs->get($record->id())?->data()); // ['ok' => true]
```

Fortsæt med [Kom godt i gang](https://storh.inline0.dev/da/docs/quick-start), eller vælg en motor i [Valg af motor](https://storh.inline0.dev/da/docs/engines#choosing-an-engine).
