Вход Регистрация
Файл: framework/console/CHelpCommand.php
Строк: 124
<?php
/**
 * CHelpCommand 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/
 */

/**
 * CHelpCommand represents a console help command.
 *
 * CHelpCommand displays the available command list or the help instructions
 * about a specific command.
 *
 * To use this command, enter the following on the command line:
 * <pre>
 * php path/to/entry_script.php help [command name]
 * </pre>
 * In the above, if the command name is not provided, it will display all
 * available commands.
 *
 * @property string $help The command description.
 *
 * @author Qiang Xue <qiang.xue@gmail.com>
 * @package system.console
 * @since 1.0
 */
class CHelpCommand extends CConsoleCommand
{
    
/**
     * Execute the action.
     * @param array $args command line parameters specific for this command
     * @return integer non zero application exit code after printing 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]))
        {
            if(!empty(
$commands))
            {
                echo 
"Yii command runner (based on Yii v".Yii::getVersion().")n";
                echo 
"Usage: ".$runner->getScriptName()." <command-name> [parameters...]n";
                echo 
"nThe following commands are available:n";
                
$commandNames=array_keys($commands);
                
sort($commandNames);
                echo 
' - '.implode("n - ",$commandNames);
                echo 
"nnTo see individual command help, use the following:n";
                echo 
"   ".$runner->getScriptName()." help <command-name>n";
            }
            else
            {
                echo 
"No available commands.n";
                echo 
"Please define them under the following directory:n";
                echo 
"t".Yii::app()->getCommandPath()."n";
            }
        }
        else
            echo 
$runner->createCommand($name)->getHelp();
        return 
1;
    }

    
/**
     * Provides the command description.
     * @return string the command description.
     */
    
public function getHelp()
    {
        return 
parent::getHelp().' [command-name]';
    }
}
Онлайн: 1
Реклама