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();
}
}
파일 보기
프로젝트 열기: c9s/getoptionkit
1 사용 예제들
공개 프로퍼티들
공개 메소드들
메소드 상세
* for the constructor , the option specs is application options
public __construct ( OptionCollection $specs ) |
$specs |
OptionCollection |
|
Return the current argument and advance to the next position.
getCurrentArgument()
공개 메소드
Return the current argument that the index pointed to.
프로퍼티 상세