
# Iseseisev kasutus

Eraldiseisev režiim võimaldab välisel PHP koodil vaadata üksuse Rudel registrit otseühenduse MySQL kaudu, laadimata WordPress.

See on mõeldud järgmisteks toiminguteks:

- liivakastide loetlemine
- liivakasti laadimine ID järgi
- elutsükli metaandmete, kloonimise metaandmete ja tabeliprefiksite lugemine

See pole mõeldud järgmisteks toiminguteks:

- liivakastide loomine
- liivakastide hävitamine
- puhastamine
- WordPress tabelite kloonimine
- aktiivsete päringute suunamine

`Rudel::create()`, `create_from_git()`, `destroy()`, `cleanup()` ja `cleanup_merged()` annavad eraldiseisvas režiimis vea `RuntimeException`, sest vajavad WordPress käitusaja teenuseid.

## Initsialiseerimine

Laadige üksuse Composer autolaadija ja edastage seejärel väärtus `Rudel\Connection` üksusele `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` võtab veel kaks valikulist argumenti: Rudel tabeli prefiksi ülekirjutuse ja draiveri (`auto`, `mysqli` või `pdo`). Kui draiveri argumenti pole, kasutab see konstanti `RUDEL_DB_DRIVER`, seejärel `auto`, mis eelistab väljaspool keskkonda WordPress väärtust `pdo_mysql` ja kasutab selle puudumisel väärtust `mysqli`.

## Kirjete lugemine

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

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

Eraldiseisvad lugemised kasutavad sama hoidla kihti nagu WordPress käitusaja lugemised. `Rudel::reset()` tühjendab eraldiseisva ühenduse.
