Advanced PHP Programming -- 以键值对的形式取得命令行参数 (Console/Getopt.php 的使应用 P130)

来源:互联网 发布:网络信息安全系统 编辑:程序博客网 时间:2024/06/05 04:43
function getOptions($default_opt, $shortoptions, $longoptions) {    require_once ("/usr/share/php/Console/Getopt.php");    $con = new Console_Getopt;    $args = Console_Getopt::readPHPArgv();    $ret = $con->getopt($args, $shortoptions, $longoptions);    $opts = array();    foreach ($ret[0] as $arr) {        $rhs = ($arr[1] !== null) ? $arr[1] : true;        if (array_key_exists($arr[0], $opts)) {            if (is_array($opts[0])) {                $opts[$arr[0]][] = $rhs;            } else {                $opts[$arr[0]] = array($opts[$arr[0]], $rhs);            }                    } else {            $opts[$arr[0]] = $rhs;        }    }    if (is_array($default_opt)) {        foreach ($default_opt as $k => $v) {            if (!array_key_exists($k, $opts)){                $opts[$k] = $v;            }        }    }    print_r($ret);    return $opts;}$shortoptions = "h:c:b:";$longoptions = array("file=", "help=");$ret = getOptions($default_opt, $shortoptions, $longoptions);print_r($ret);


原创粉丝点击