示例#1
0
 /**
  * Prints the available options in the script.
  *
  * @param string $action Action name.
  *
  * @throws CommandsException
  * @return void
  */
 public function printParameters($action)
 {
     if (!$action) {
         return;
     }
     if (empty($this->_actions[$action])) {
         throw new CommandsException("Action '{$action}' not found in this command.");
     }
     if (empty($this->_actions[$action]['params'])) {
         return;
     }
     print ConsoleUtil::headLine('Available parameters:');
     foreach ($this->_actions[$action]['params'] as $parameter) {
         $cmd = ' --' . $parameter['name'];
         $type = '';
         if ($parameter['defaultValueType'] != 'boolean') {
             $cmd .= '=' . $parameter['defaultValueType'];
             $type = ' (' . $parameter['type'] . ')';
         }
         print '  ';
         print ConsoleUtil::colorize($cmd, ConsoleUtil::FG_CYAN);
         print ConsoleUtil::colorize($type, ConsoleUtil::FG_YELLOW);
         print ConsoleUtil::tab(ConsoleUtil::COMMENT_START_POSITION, strlen($cmd . $type) + 6);
         print ConsoleUtil::colorize($parameter['description'], ConsoleUtil::FG_BROWN);
         print PHP_EOL;
     }
 }