Penggunaan Mandiri
Mode mandiri memungkinkan kode PHP eksternal memeriksa registri Rudel melalui koneksi MySQL langsung, tanpa memuat WordPress.
Mode ini ditujukan untuk:
- melihat daftar sandbox
- memuat satu sandbox berdasarkan ID
- membaca metadata siklus hidup, metadata clone, dan prefix tabel
Mode ini tidak ditujukan untuk:
- membuat sandbox
- menghancurkan sandbox
- menjalankan pembersihan
- mengklon tabel WordPress
- merutekan permintaan langsung
Rudel::create(), create_from_git(), destroy(), cleanup(), dan cleanup_merged() melempar RuntimeException dalam mode mandiri karena memerlukan layanan runtime WordPress.
Inisialisasi
Muat autoloader milik Composer, lalu berikan Rudel\Connection ke Rudel::init():
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 menerima dua argumen opsional tambahan: penggantian prefiks tabel Rudel dan driver (auto, mysqli, atau pdo). Tanpa argumen driver, fungsi ini menggunakan konstanta RUDEL_DB_DRIVER, lalu auto, yang mengutamakan pdo_mysql di luar WordPress dan menggunakan mysqli sebagai cadangan.
Membaca catatan
foreach ( Rudel::all() as $environment ) {
echo $environment->id . ' ' . $environment->get_table_prefix() . "\n";
}
$environment = Rudel::get( 'alpha-3be7' );
Pembacaan mandiri menggunakan lapisan repositori yang sama seperti pembacaan runtime WordPress. Rudel::reset() menghapus koneksi mandiri.