| 
<?php/*
 * Copyright (c) 2022.
 * The OptionsResolver component helps you configure objects with option arrays. It supports default values, option constraints and lazy options.
 */
 
 use Wepesi\Demo\Database;
 
 include __DIR__."/../vendor/autoload.php";
 include __DIR__."/Database.php";
 
 $database = new Database([
 'dbname' => 'app',
 ]);
 // Uncaught InvalidArgumentException: The required option "username" is missing.
 
 // $database = new Database([
 //     'host' => 'localhost',
 //     'dbname' => 'app',
 //     'username' => 'root',
 //     'password' => 'root',
 // ]);
 var_dump($database->options);
 |