示例#1
0
 /**
  * Check help system.
  *
  * @return bool
  */
 protected function _helpIsRequired()
 {
     if ($_SERVER['argv'][1] != 'help') {
         return false;
     }
     if (empty($_SERVER['argv'][2])) {
         $this->printAvailableCommands();
         return true;
     }
     $command = $this->_getRequiredCommand($_SERVER['argv'][2]);
     if (!$command) {
         print ConsoleUtil::warningLine('Command "' . $_SERVER['argv'][2] . '" not found.');
         return true;
     }
     $command->getHelp(!empty($_SERVER['argv'][3]) ? $_SERVER['argv'][3] : null);
     return true;
 }
示例#2
0
 /**
  * Prints the help for current command.
  *
  * @param string|null $action Action name.
  *
  * @return void
  */
 public function getHelp($action = null)
 {
     $commandName = $this->getName();
     if ($action) {
         if (empty($this->_actions[$action])) {
             print ConsoleUtil::warningLine("Action '{$action}' not found in this command.");
             return;
         }
         print ConsoleUtil::headLine('Help for "' . $commandName . ' ' . $action . '":');
         if (isset($this->_actions[$action]) && isset($this->_actions[$action]['description'])) {
             print ConsoleUtil::textLine($this->_actions[$action]['description']);
         } else {
             print ConsoleUtil::textLine($this->getDescription());
         }
         $this->printParameters($action);
         return;
     } else {
         print ConsoleUtil::headLine('Help:');
         print ConsoleUtil::textLine($this->getDescription());
     }
     foreach ($this->getActions() as $actionName => $metadata) {
         $description = isset($metadata['description']) ? $metadata['description'] : '';
         print ConsoleUtil::commandLine($commandName . ' ' . $actionName, $description);
     }
     print PHP_EOL;
 }