• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP Console\ConsoleOptionParser类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了PHP中Cake\Console\ConsoleOptionParser的典型用法代码示例。如果您正苦于以下问题:PHP ConsoleOptionParser类的具体用法?PHP ConsoleOptionParser怎么用?PHP ConsoleOptionParser使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



在下文中一共展示了ConsoleOptionParser类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。

示例1: getOptionParser

 /**
  * Display help for this console.
  *
  * @return ConsoleOptionParser
  */
 public function getOptionParser()
 {
     $parser = new ConsoleOptionParser('console');
     $parser->description('This shell provides a REPL that you can use to interact ' . 'with your application in an interactive fashion. You can use ' . 'it to run adhoc queries with your models, or experiment ' . 'and explore the features of CakePHP and your application.' . "\n\n" . 'You will need to have psysh installed for this Shell to work.');
     $parser->epilog('Thank you for baking with CakePHP!');
     return $parser;
 }
开发者ID:jeffblack360,项目名称:cakeblog,代码行数:12,代码来源:ConsoleShell.php


示例2: getOptionParser

 /**
  * Display help for this console.
  *
  * @return ConsoleOptionParser
  */
 public function getOptionParser()
 {
     $file = Runner::ROBOFILE;
     if (Configure::check('Path.robofile')) {
         $file = Configure::read('Path.robofile');
     }
     $parser = new ConsoleOptionParser('robot', false);
     $parser->description('This shell provides a Robo runner.' . "\n\n" . 'You will need to have robo installed for this Shell to work. ')->addOption('config', ['help' => __d('cake_console', 'Path to your RoboFile class'), 'default' => $file]);
     return $parser;
 }
开发者ID:gourmet,项目名称:robo,代码行数:15,代码来源:RobotShell.php


示例3: getOptionParser

 /**
  * Display help for this console.
  *
  * @return ConsoleOptionParser
  */
 public function getOptionParser()
 {
     $parser = new ConsoleOptionParser('console');
     $parser->description("This shell clean the cache of your application.")->command("cache.clear")->addOption('all', ['short' => 'a', 'help' => 'Clear all caches', 'boolean' => true])->addSubcommand('all', ['help' => 'Clear all caches']);
     foreach ($this->tasks as $task => $option) {
         $classname = $this->taskClassname($task);
         $parser->addSubcommand($this->taskName($task), ['help' => $this->{$classname}->help(), 'parser' => $this->{$classname}->getOptionParser()]);
     }
     return $parser;
 }
开发者ID:daoandco,项目名称:cakephp-cachecleaner,代码行数:15,代码来源:ClearShell.php


示例4: __construct

 /**
  * Make a new Subcommand
  *
  * @param string|array $name The long name of the subcommand, or an array with all the properties.
  * @param string $help The help text for this option.
  * @param \Cake\Console\ConsoleOptionParser|array|null $parser A parser for this subcommand. Either a ConsoleOptionParser, or an
  *   array that can be used with ConsoleOptionParser::buildFromArray().
  */
 public function __construct($name, $help = '', $parser = null)
 {
     if (is_array($name) && isset($name['name'])) {
         foreach ($name as $key => $value) {
             $this->{'_' . $key} = $value;
         }
     } else {
         $this->_name = $name;
         $this->_help = $help;
         $this->_parser = $parser;
     }
     if (is_array($this->_parser)) {
         $this->_parser['command'] = $this->_name;
         $this->_parser = ConsoleOptionParser::buildFromArray($this->_parser);
     }
 }
开发者ID:rederlo,项目名称:cakephp,代码行数:24,代码来源:ConsoleInputSubcommand.php


示例5: getOptionParser

 /**
  * Display help for this console.
  *
  * @return ConsoleOptionParser
  */
 public function getOptionParser()
 {
     $parser = new ConsoleOptionParser('console', false);
     $parser->description('This shell provides a REPL that you can use to interact' . 'with your application in an interactive fashion. You can use' . 'it to run adhoc queries with your models, or experiment' . 'and explore the features of CakePHP and your application.' . "\n\n" . 'You will need to have boris installed for this Shell to work. ' . 'Boris is known to not work well on windows due to dependencies on ' . 'readline and posix.');
     return $parser;
 }
开发者ID:vpolpeta,项目名称:crud-demo-app,代码行数:11,代码来源:ConsoleShell.php


示例6: getOptionParser

 /**
  * Display help for this console.
  *
  * @return ConsoleOptionParser
  */
 public function getOptionParser()
 {
     $parser = new ConsoleOptionParser('console');
     $parser->description('Clear directories in "tmp/cache/"')->command("dir")->addOption('all', ['short' => 'a', 'help' => 'Clear all directories', 'boolean' => true]);
     return $parser;
 }
开发者ID:daoandco,项目名称:cakephp-cachecleaner,代码行数:11,代码来源:DirTask.php


示例7: testXmlHelpAsObject

 /**
  * Test xml help as object
  *
  * @return void
  */
 public function testXmlHelpAsObject()
 {
     $parser = new ConsoleOptionParser('mycommand', false);
     $parser->addOption('test', ['help' => 'A test option.'])->addArgument('model', ['help' => 'The model to make.', 'required' => true])->addArgument('other_longer', ['help' => 'Another argument.']);
     $formatter = new HelpFormatter($parser);
     $result = $formatter->xml(false);
     $this->assertInstanceOf('SimpleXmlElement', $result);
 }
开发者ID:JesseDarellMoore,项目名称:CS499,代码行数:13,代码来源:HelpFormatterTest.php


示例8: testRunCommandHittingTaskInSubcommand

 /**
  * test that runCommand will call runCommand on the task.
  *
  * @return void
  */
 public function testRunCommandHittingTaskInSubcommand()
 {
     $parser = new ConsoleOptionParser('knife');
     $parser->addSubcommand('slice');
     $io = $this->getMock('Cake\\Console\\ConsoleIo');
     $shell = $this->getMock('Cake\\Console\\Shell', ['hasTask', 'startup', 'getOptionParser'], [], '', false);
     $shell->io($io);
     $task = $this->getMock('Cake\\Console\\Shell', ['main', 'runCommand'], [], '', false);
     $task->io($io);
     $task->expects($this->once())->method('runCommand')->with(['one'], false);
     $shell->expects($this->once())->method('getOptionParser')->will($this->returnValue($parser));
     $shell->expects($this->once())->method('startup');
     $shell->expects($this->any())->method('hasTask')->will($this->returnValue(true));
     $shell->Slice = $task;
     $shell->runCommand(['slice', 'one']);
 }
开发者ID:Slayug,项目名称:castor,代码行数:21,代码来源:ShellTest.php


示例9: getOptionParser

 /**
  * Display help for this console.
  *
  * @return ConsoleOptionParser
  */
 public function getOptionParser()
 {
     $parser = new ConsoleOptionParser('deployer', false);
     $parser->description('This shell is used when deploying the application.')->addSubcommand('clear_cache', ['help' => 'Clear the cache files.', 'parser' => $this->ClearCache->getOptionParser()]);
     return $parser;
 }
开发者ID:Xety,项目名称:Xeta,代码行数:11,代码来源:DeployerShell.php


示例10: getOptionParser

 /**
  * Set shell description and command line options
  *
  * @return ConsoleOptionParser
  */
 public function getOptionParser()
 {
     $parser = new ConsoleOptionParser('console');
     $parser->description('Validate CSV and configuration files of all CSV modules');
     return $parser;
 }
开发者ID:QoboLtd,项目名称:cakephp-csv-migrations,代码行数:11,代码来源:ValidateShell.php


示例11: getOptionParser

 public function getOptionParser()
 {
     $parser = new ConsoleOptionParser('console');
     $parser->description("Clear ORM Cache.")->command("model");
     return $parser;
 }
开发者ID:daoandco,项目名称:cakephp-cachecleaner,代码行数:6,代码来源:OrmTask.php


示例12: testMerge

 /**
  * Tests merge()
  *
  * @return void
  */
 public function testMerge()
 {
     $parser = new ConsoleOptionParser('test');
     $parser->addOption('test', ['short' => 't', 'boolean' => true])->addArgument('one', ['required' => true, 'choices' => ['a', 'b']])->addArgument('two', ['required' => true]);
     $parserTwo = new ConsoleOptionParser('test');
     $parserTwo->addOption('file', ['short' => 'f', 'boolean' => true])->addOption('output', ['short' => 'o', 'boolean' => true])->addArgument('one', ['required' => true, 'choices' => ['a', 'b']]);
     $parser->merge($parserTwo);
     $result = $parser->toArray();
     $options = $result['options'];
     $this->assertTrue(isset($options['quiet']));
     $this->assertTrue(isset($options['test']));
     $this->assertTrue(isset($options['file']));
     $this->assertTrue(isset($options['output']));
     $this->assertEquals(2, count($result['arguments']));
     $this->assertEquals(6, count($result['options']));
 }
开发者ID:JesseDarellMoore,项目名称:CS499,代码行数:21,代码来源:ConsoleOptionParserTest.php


示例13: getOptionParser

 /**
  * Gets the option parser instance and configures it.
  *
  * @return \Cake\Console\ConsoleOptionParser
  */
 public function getOptionParser()
 {
     $name = ($this->plugin ? $this->plugin . '.' : '') . $this->name;
     $parser = new ConsoleOptionParser($name);
     $bakeThemes = [];
     foreach (Plugin::loaded() as $plugin) {
         $path = Plugin::classPath($plugin);
         if (is_dir($path . 'Template' . DS . 'Bake')) {
             $bakeThemes[] = $plugin;
         }
     }
     $parser->description('Bake seed class.')->addOption('plugin', ['short' => 'p', 'help' => 'Plugin to bake into.'])->addOption('force', ['short' => 'f', 'boolean' => true, 'help' => 'Force overwriting existing files without prompting.'])->addOption('connection', ['short' => 'c', 'default' => 'default', 'help' => 'The datasource connection to get data from.'])->addOption('table', ['help' => 'The database table to use.'])->addOption('theme', ['short' => 't', 'help' => 'The theme to use when baking code.', 'choices' => $bakeThemes])->addArgument('name', ['help' => 'Name of the seed to bake. Can use Plugin.name to bake plugin models.'])->addOption('data', ['boolean' => true, 'help' => 'Include data from the table to the seed'])->addOption('fields', ['default' => '*', 'help' => 'If including data, comma separated list of fields to select (all fields by default)'])->addOption('limit', ['short' => 'l', 'help' => 'If including data, max number of rows to select']);
     return $parser;
 }
开发者ID:cakephp,项目名称:migrations,代码行数:19,代码来源:SeedTask.php


示例14: processOptionParser

 /**
  * Gets the option parser instance and configures it.
  * By overriding this method you can configure the ConsoleOptionParser before returning it.
  *
  * @return ConsoleOptionParser
  * @link http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::getOptionParser
  */
 public function processOptionParser(ConsoleOptionParser $parser)
 {
     return $parser->addOption('process_id', ['help' => 'A process identifier to make locking work with Supervisor']);
 }
开发者ID:uafrica,项目名称:delayed-jobs,代码行数:11,代码来源:ProcessManagerTask.php


示例15: testParsingWithSubParser

 /**
  * test that parse() takes a subcommand argument, and that the subcommand parser
  * is used.
  *
  * @return void
  */
 public function testParsingWithSubParser()
 {
     $parser = new ConsoleOptionParser('test', false);
     $parser->addOption('primary')->addArgument('one', array('required' => true, 'choices' => array('a', 'b')))->addArgument('two', array('required' => true))->addSubcommand('sub', array('parser' => array('options' => array('secondary' => array('boolean' => true), 'fourth' => array('help' => 'fourth option')), 'arguments' => array('sub_arg' => array('choices' => array('c', 'd'))))));
     $result = $parser->parse(array('sub', '--secondary', '--fourth', '4', 'c'));
     $expected = array(array('secondary' => true, 'fourth' => '4', 'help' => false, 'verbose' => false, 'quiet' => false), array('c'));
     $this->assertEquals($expected, $result, 'Sub parser did not parse request.');
 }
开发者ID:maitrepylos,项目名称:nazeweb,代码行数:14,代码来源:ConsoleOptionParserTest.php


示例16: getOptionParser

 /**
  * Display help for this console.
  *
  * @return ConsoleOptionParser
  */
 public function getOptionParser()
 {
     $parser = new ConsoleOptionParser('clear_cache', false);
     $parser->description('This tasks is used to clear the cached files in the application.');
     return $parser;
 }
开发者ID:Xety,项目名称:Xeta,代码行数:11,代码来源:ClearCacheTask.php


示例17: buildFromArray

 /**
  * Build a parser from an array. Uses an array like
  *
  * ```
  * $spec = [
  *      'description' => 'text',
  *      'epilog' => 'text',
  *      'arguments' => [
  *          // list of arguments compatible with addArguments.
  *      ],
  *      'options' => [
  *          // list of options compatible with addOptions
  *      ],
  *      'subcommands' => [
  *          // list of subcommands to add.
  *      ]
  * ];
  * ```
  *
  * @param array $spec The spec to build the OptionParser with.
  * @param bool $defaultOptions Whether you want the verbose and quiet options set.
  * @return $this
  */
 public static function buildFromArray($spec, $defaultOptions = true)
 {
     $parser = new ConsoleOptionParser($spec['command'], $defaultOptions);
     if (!empty($spec['arguments'])) {
         $parser->addArguments($spec['arguments']);
     }
     if (!empty($spec['options'])) {
         $parser->addOptions($spec['options']);
     }
     if (!empty($spec['subcommands'])) {
         $parser->addSubcommands($spec['subcommands']);
     }
     if (!empty($spec['description'])) {
         $parser->description($spec['description']);
     }
     if (!empty($spec['epilog'])) {
         $parser->epilog($spec['epilog']);
     }
     return $parser;
 }
开发者ID:CakeDC,项目名称:cakephp,代码行数:43,代码来源:ConsoleOptionParser.php


示例18: getOptionParser

 /**
  * Gets the option parser instance and configures it.
  *
  * @return \Cake\Console\ConsoleOptionParser
  */
 public function getOptionParser()
 {
     $name = ($this->plugin ? $this->plugin . '.' : '') . $this->name;
     $parser = new ConsoleOptionParser($name);
     $bakeThemes = [];
     foreach (Plugin::loaded() as $plugin) {
         $path = Plugin::classPath($plugin);
         if (is_dir($path . 'Template' . DS . 'Bake')) {
             $bakeThemes[] = $plugin;
         }
     }
     $parser->description('Bake migration class.')->addOption('plugin', ['short' => 'p', 'help' => 'Plugin to bake into.'])->addOption('force', ['short' => 'f', 'boolean' => true, 'help' => 'Force overwriting existing files without prompting.'])->addOption('connection', ['short' => 'c', 'default' => 'default', 'help' => 'The datasource connection to get data from.'])->addOption('theme', ['short' => 't', 'help' => 'The theme to use when baking code.', 'choices' => $bakeThemes]);
     return $parser;
 }
开发者ID:lhas,项目名称:pep,代码行数:19,代码来源:SimpleMigrationTask.php


示例19: _generateUsage

 /**
  * Generate the usage for a shell based on its arguments and options.
  * Usage strings favor short options over the long ones. and optional args will
  * be indicated with []
  *
  * @return string
  */
 protected function _generateUsage()
 {
     $usage = ['cake ' . $this->_parser->command()];
     $subcommands = $this->_parser->subcommands();
     if (!empty($subcommands)) {
         $usage[] = '[subcommand]';
     }
     $options = [];
     foreach ($this->_parser->options() as $option) {
         $options[] = $option->usage();
     }
     if (count($options) > $this->_maxOptions) {
         $options = ['[options]'];
     }
     $usage = array_merge($usage, $options);
     $args = [];
     foreach ($this->_parser->arguments() as $argument) {
         $args[] = $argument->usage();
     }
     if (count($args) > $this->_maxArgs) {
         $args = ['[arguments]'];
     }
     $usage = array_merge($usage, $args);
     return implode(' ', $usage);
 }
开发者ID:rlugojr,项目名称:cakephp,代码行数:32,代码来源:HelpFormatter.php


示例20: _displayHelp

 /**
  * Display the help in the correct format
  *
  * @param string $command The command to get help for.
  * @return int|bool
  */
 protected function _displayHelp($command)
 {
     $format = 'text';
     if (!empty($this->args[0]) && $this->args[0] === 'xml') {
         $format = 'xml';
         $this->_io->outputAs(ConsoleOutput::RAW);
     } else {
         $this->_welcome();
     }
     return $this->out($this->OptionParser->help($command, $format));
 }
开发者ID:a53ali,项目名称:CakePhP,代码行数:17,代码来源:Shell.php



注:本文中的Cake\Console\ConsoleOptionParser类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP Console\Shell类代码示例发布时间:2022-05-23
下一篇:
PHP Collection\Collection类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap