Example #1
0
 public function run()
 {
     if ($_SERVER['argc'] < 2) {
         TaskErrors::NoTasksFound();
     }
     $task =& $_SERVER['argv'][1];
     if ($task === 'help') {
         $this->displayHelp();
     } else {
         if (!isset($this->tasks[$task])) {
             TaskErrors::taskNotExists($task);
         }
         for ($i = 2; $i < $_SERVER['argc']; ++$i) {
             $size = strlen($_SERVER['argv'][$i]);
             if (mb_substr($_SERVER['argv'][$i], 0, 2) === '--' && $size > 2) {
                 $this->catchOption(mb_substr($_SERVER['argv'][$i], 2), $task);
             } else {
                 if ($_SERVER['argv'][$i][0] === '-' && $size > 1) {
                     $this->catchShortcut(mb_substr($_SERVER['argv'][$i], 1), $task);
                 } else {
                     $this->catchArg($_SERVER['argv'][$i], $task);
                 }
             }
         }
         $this->process($this->tasks[$task]);
     }
 }