读取(Fetching)选项和参数
在声明
数据的解析被延迟到第一个依靠 操作 Getopt 异常
如果用户在命令行中给出任何无效选项,解析函数抛出一个 Example #1 捕捉 Getopt 异常 try { $opts = new Zend_Console_Getopt('abp:'); $opts->parse(); } catch (Zend_Console_Getopt_Exception $e) { echo $e->getUsageMessage(); exit; } 解析抛出异常的情况包括:
通过名字读取 (Fetching)选项
可以使用 Example #2 使用 getOption() $opts = new Zend_Console_Getopt('abp:'); $b = $opts->getOption('b'); $p_parameter = $opts->getOption('p');
另外,可以使用魔术函数 Example #3 使用 __get() 和 __isset() 魔术方法 $opts = new Zend_Console_Getopt('abp:'); if (isset($opts->b)) { echo "I got the b option.\n"; } $p_parameter = $opts->p; // null if not set 如果选项被带有别名声明,在上面的方法中可以使用任何别名。 报告选项有若干方法来报告由用户在当前命令行给出的选项的全集。
在上述所有的方法中,flag 字符串是对应于别名列表中的第一个字符串。例如:如果选项别名被声明如" 读取非选项参数
在选项参数和它们的参数从命令行中解析后,可能还有另外的参数剩余。可以使用 Example #4 使用 getRemainingArgs() $opts = new Zend_Console_Getopt('abp:'); $opts->setArguments(array('-p', 'p_parameter', 'filename')); $args = $opts->getRemainingArgs(); // returns array('filename')
|