包 | system.console |
---|---|
继承 | class CHelpCommand » CConsoleCommand » CComponent |
源自 | 1.0 |
版本 | $Id: CHelpCommand.php 3426 2011-10-25 00:01:09Z alexander.makarow $ |
源码 |
CHelpCommand代表控制台帮助命令。
CHelpCommand显示可用的命令列表或者 关于指定命令的帮助指示。
如果要使用这个命令,输入下面的命令行:
CHelpCommand显示可用的命令列表或者 关于指定命令的帮助指示。
如果要使用这个命令,输入下面的命令行:
php path/to/entry_script.php help [command name]在上面,如果没有提供命令名字,它会显示所有 可用的命令。
公共属性
属性 | 类型 | 描述 | 定义在 |
---|---|---|---|
commandRunner | CConsoleCommandRunner | 命令执行对象的实例 | CConsoleCommand |
defaultAction | string | 默认动作的名字。 | CConsoleCommand |
help | string | 提供命令描述。 | CHelpCommand |
name | string | 命令名字。 | CConsoleCommand |
optionHelp | array | 提供命令帮助信息选项。 | CConsoleCommand |
公共方法
方法 | 描述 | 定义在 |
---|---|---|
__call() | 如果类中没有调的方法名,则调用这个方法。 | CComponent |
__construct() | 构造方法。 | CConsoleCommand |
__get() | 返回一个属性值、一个事件处理程序列表或一个行为名称。 | CComponent |
__isset() | 检查一个属性是否为null。 | CComponent |
__set() | 设置一个组件的属性值。 | CComponent |
__unset() | 设置一个组件的属性为null。 | CComponent |
asa() | 返回这个名字的行为对象。 | CComponent |
attachBehavior() | 附加一个行为到组件。 | CComponent |
attachBehaviors() | 附加一个行为列表到组件。 | CComponent |
attachEventHandler() | 为事件附加一个事件处理程序。 | CComponent |
buildFileList() | 建立目录的文件列表。 | CConsoleCommand |
canGetProperty() | 确定属性是否可读。 | CComponent |
canSetProperty() | 确定属性是否可写。 | CComponent |
confirm() | 通过输入y或者n来询问用户确定。 | CConsoleCommand |
copyFiles() | 将文件从一个地方复制到另一个地方。 | CConsoleCommand |
detachBehavior() | 从组件中分离一个行为。 | CComponent |
detachBehaviors() | 从组件中分离所有行为。 | CComponent |
detachEventHandler() | 分离一个存在的事件处理程序。 | CComponent |
disableBehavior() | 禁用一个附加行为。 | CComponent |
disableBehaviors() | 禁用组件附加的所有行为。 | CComponent |
enableBehavior() | 启用一个附加行为。 | CComponent |
enableBehaviors() | 启用组件附加的所有行为。 | CComponent |
ensureDirectory() | 所有的父目录中如果哪个不存在,则创建它。 | CConsoleCommand |
evaLuateExpression() | 计算一个PHP表达式,或根据组件上下文执行回调。 | CComponent |
getCommandRunner() | 返回命令执行对象的实例 | CConsoleCommand |
getEventHandlers() | 返回一个事件的附加处理程序列表。 | CComponent |
getHelp() | 提供命令描述。 | CHelpCommand |
getName() | 返回命令名字。 | CConsoleCommand |
getOptionHelp() | 提供命令帮助信息选项。 | CConsoleCommand |
hasEvent() | 确定一个事件是否定义。 | CComponent |
hasEventHandler() | 检查事件是否有附加的处理程序。 | CComponent |
hasProperty() | 确定属性是否被定义。 | CComponent |
init() | 初始化命令对象。 | CConsoleCommand |
pluralize() | 将单词转换为它的复数形式。 | CConsoleCommand |
prompt() | 如果readline这个PHP扩展可用,则通过它读取输入的内容,否则通过fgets()来读取。 | CConsoleCommand |
raiseEvent() | 发起一个事件。 | CComponent |
renderFile() | 渲染一个视图文件。 | CConsoleCommand |
run() | 执行动作。 | CHelpCommand |
usageError() | 显示一个运行错误。 | CConsoleCommand |
受保护方法
方法 | 描述 | 定义在 |
---|---|---|
afterAction() | 这个方法会在一个动作执行完成后发起。 | CConsoleCommand |
beforeaction() | 这个方法会在一个动作执行前发起。 | CConsoleCommand |
resolveRequest() | 解析命令行参数然后决定要运行哪个动作。 | CConsoleCommand |
属性详细
help
属性
只读
public string getHelp()
提供命令描述。
方法详细
getHelp()
方法
public string getHelp()
| ||
{return} | string | 命令描述。 |
public function getHelp()
{
return parent::getHelp().' [command-name]';
}
提供命令描述。
run()
方法
public void run(array $args)
| ||
$args | array | 指定给这个命令的命令行参数。 |
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 "\n\nTo 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();
}
执行动作。