
# Samostatné použití

Samostatný režim umožňuje externímu kódu PHP kontrolovat registr Rudel pomocí přímého připojení MySQL bez načtení WordPress.

Je určen pro:

- výpis sandboxů
- načtení sandboxu podle ID
- čtení metadat životního cyklu, metadat klonů a prefixů tabulek

Není určen pro:

- vytváření sandboxů
- ničení sandboxů
- spouštění čištění
- klonování tabulek WordPress
- směrování živých požadavků

`Rudel::create()`, `create_from_git()`, `destroy()`, `cleanup()` a `cleanup_merged()` v samostatném režimu vyvolají `RuntimeException`, protože vyžadují běhové služby WordPress.

## Inicializace

Načtěte autoloader Composer a poté předejte `Rudel\Connection` funkci `Rudel::init()`:

```php
use Rudel\Connection;
use Rudel\Rudel;

require __DIR__ . '/vendor/autoload.php';

Rudel::init(
    new Connection(
        '127.0.0.1',  // host, in DB_HOST format (host, host:port or a socket path)
        'wordpress',  // database
        'root',       // user
        'root',       // password
        'wp_'         // WordPress table prefix
    ),
    [ 'environments_dir' => '/var/www/html/wp-content/rudel-environments' ]
);
```

`Connection` přijímá další dva volitelné argumenty: přepsání prefixu tabulek Rudel a ovladač (`auto`, `mysqli` nebo `pdo`). Není-li argument ovladače zadán, použije konstantu `RUDEL_DB_DRIVER` a poté `auto`, která mimo WordPress upřednostňuje `pdo_mysql` a jako záložní možnost použije `mysqli`.

## Čtení záznamů

```php
foreach ( Rudel::all() as $environment ) {
    echo $environment->id . ' ' . $environment->get_table_prefix() . "\n";
}

$environment = Rudel::get( 'alpha-3be7' );
```

Samostatné čtení používá stejnou vrstvu úložiště jako čtení za běhu v WordPress. `Rudel::reset()` vymaže samostatné připojení.
