PhpMigration\App::handleArgs PHP Метод

handleArgs() защищенный Метод

protected handleArgs ( )
    protected function handleArgs()
    {
        // Default
        $args = ['--list' => false, '--quite' => false, '--set' => 'to70', '--dump' => false, '--verbose' => false, '--version' => false, '--help' => false, '<file>' => [], '--export-posbit' => false, '--pack' => false];
        // Fill args
        $argv = array_slice($_SERVER['argv'], 1);
        $has_invalid = false;
        while ($argv) {
            $arg = array_shift($argv);
            if ($arg[0] === chr(1)) {
                $arg = substr($arg, 1);
                $is_split = true;
            } else {
                $is_split = false;
            }
            switch ($arg) {
                case '-l':
                case '--list':
                    $args['--list'] = true;
                    break;
                case '-q':
                case '--quite':
                    $args['--quite'] = true;
                    break;
                case '-s':
                case '--set':
                    $next = array_shift($argv);
                    if ($is_split) {
                        $next = substr($next, 1);
                    }
                    $args['--set'] = $next;
                    break;
                case '-d':
                case '--dump':
                    $args['--dump'] = true;
                    break;
                case '-v':
                case '--verbose':
                    $args['--verbose'] = true;
                    break;
                case '--version':
                    $args['--version'] = true;
                    break;
                case '-h':
                case '--help':
                    $args['--help'] = true;
                    break;
                case '--export-posbit':
                    $args['--export-posbit'] = true;
                    break;
                case '--pack':
                    $args['--pack'] = true;
                    break;
                default:
                    if ($arg[0] == '-') {
                        $arglen = strlen($arg);
                        if ($arglen > 2 && $arg[1] != '-') {
                            array_unshift($argv, '-' . substr($arg, 2));
                            array_unshift($argv, chr(1) . substr($arg, 0, 2));
                        } else {
                            $has_invalid = true;
                        }
                    } else {
                        $args['<file>'][] = $arg;
                    }
                    break;
            }
        }
        $this->args = $args;
        return !$has_invalid;
    }