| 
<?php
 use ElasticNomad\Nomad;
 
 require_once 'vendor/autoload.php';
 
 $dotenv = Dotenv\Dotenv::createImmutable(__DIR__);
 $dotenv->load();
 
 $validOperations = [
 'backup',
 'restore',
 ];
 $operationsParams = [
 'backup' => [
 'index',
 ],
 'restore' => [
 'file_name',
 ],
 ];
 
 $operation = $argv[1] ?? '';
 
 if (!in_array($operation, $validOperations)) {
 echo 'Please, use a valid operation: ' . implode(', ', $validOperations);
 die;
 }
 
 $params = array_slice(
 $argv,
 2
 );
 
 if (
 isset($operationsParams[$operation]) &&
 count($params) < count($operationsParams[$operation])
 ) {
 echo 'Please, provide all the parameters: ' . implode(', ', $operationsParams[$operation]);
 die;
 }
 
 $options = [];
 if (isset($operationsParams[$operation])) {
 foreach ($operationsParams[$operation] as $index => $paramName) {
 $options[$paramName] = $params[$index];
 }
 }
 
 $nomad = new Nomad();
 $nomad->{$operation}($options);
 
 |