123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- <?php
- /**
- * HelpCommand class file.
- *
- * @author Qiang Xue <qiang.xue@gmail.com>
- * @link http://www.yiiframework.com/
- * @copyright 2008-2013 Yii Software LLC
- * @license http://www.yiiframework.com/license/
- */
- /**
- * HelpCommand displays help information for commands under yiic shell.
- *
- * @property string $help The command description.
- *
- * @author Qiang Xue <qiang.xue@gmail.com>
- * @package system.cli.commands.shell
- * @since 1.0
- */
- class HelpCommand extends CConsoleCommand
- {
- /**
- * Execute the action.
- * @param array $args command line parameters specific for this command
- * @return integer non zero application exit code for help
- */
- public function run($args)
- {
- $runner=$this->getCommandRunner();
- $commands=$runner->commands;
- if(isset($args[0]))
- $name=strtolower($args[0]);
- if(!isset($args[0]) || !isset($commands[$name]))
- {
- echo <<<EOD
- At the prompt, you may enter a PHP statement or one of the following commands:
- EOD;
- $commandNames=array_keys($commands);
- sort($commandNames);
- echo ' - '.implode("\n - ",$commandNames);
- echo <<<EOD
- Type 'help <command-name>' for details about a command.
- To expand the above command list, place your command class files
- under 'protected/commands/shell', or a directory specified
- by the 'YIIC_SHELL_COMMAND_PATH' environment variable. The command class
- must extend from CConsoleCommand.
- EOD;
- }
- else
- echo $runner->createCommand($name)->getHelp();
- return 1;
- }
- /**
- * Provides the command description.
- * @return string the command description.
- */
- public function getHelp()
- {
- return <<<EOD
- USAGE
- help [command-name]
- DESCRIPTION
- Display the help information for the specified command.
- If the command name is not given, all commands will be listed.
- PARAMETERS
- * command-name: optional, the name of the command to show help information.
- EOD;
- }
- }
|