PHP Класс GetOptionKit\ContinuousOptionParser

app.php [--app-options] [subcommand --subcommand-options] [subcommand --subcommand-options] [subcommand --subcommand-options] [arguments] ContinuousOptionParser is for the process flow: init app options, parse app options while not end if stop at command shift command parse command options else if stop at arguments shift arguments execute current command with the arguments. Example code: subcommand stack $subcommands = array('subcommand1','subcommand2','subcommand3'); different command has its own options $subcommand_specs = array( 'subcommand1' => $cmdspecs, 'subcommand2' => $cmdspecs, 'subcommand3' => $cmdspecs, ); for saved options $subcommand_options = array(); command arguments $arguments = array(); $argv = explode(' ','-v -d -c subcommand1 -a -b -c subcommand2 -c subcommand3 arg1 arg2 arg3'); parse application options first $parser = new ContinuousOptionParser( $appspecs ); $app_options = $parser->parse( $argv ); while( ! $parser->isEnd() ) { if( $parser->getCurrentArgument() == $subcommands[0] ) { $parser->advance(); $subcommand = array_shift( $subcommands ); $parser->setSpecs( $subcommand_specs[$subcommand] ); $subcommand_options[ $subcommand ] = $parser->continueParse(); } else { $arguments[] = $parser->advance(); } }
Наследование: extends OptionParser
Показать файл Открыть проект Примеры использования класса

Открытые свойства

Свойство Тип Описание
$argv
$index
$length

Открытые методы

Метод Описание
__construct ( OptionCollection $specs ) * for the constructor , the option specs is application options
advance ( ) : string Return the current argument and advance to the next position.
continueParse ( )
getCurrentArgument ( ) : string Return the current argument that the index pointed to.
isEnd ( )
parse ( array $argv )
startFrom ( $index )

Описание методов

__construct() публичный Метод

* for the constructor , the option specs is application options
public __construct ( OptionCollection $specs )
$specs OptionCollection

advance() публичный Метод

Return the current argument and advance to the next position.
public advance ( ) : string
Результат string

continueParse() публичный Метод

public continueParse ( )

getCurrentArgument() публичный Метод

Return the current argument that the index pointed to.
public getCurrentArgument ( ) : string
Результат string

isEnd() публичный Метод

public isEnd ( )

parse() публичный Метод

public parse ( array $argv )
$argv array

startFrom() публичный Метод

public startFrom ( $index )

Описание свойств

$argv публичное свойство

public $argv

$index публичное свойство

public $index

$length публичное свойство

public $length