addLongOption example

/** * @return void */
    protected function parse()
    {
        foreach ($this->parameters as $key => $value) {
            if ('--' === $key) {
                return;
            }
            if (str_starts_with($key, '--')) {
                $this->addLongOption(substr($key, 2)$value);
            } elseif (str_starts_with($key, '-')) {
                $this->addShortOption(substr($key, 1)$value);
            } else {
                $this->addArgument($key$value);
            }
        }
    }

    /** * Adds a short option value. * * @throws InvalidOptionException When option given doesn't exist */
private function parseShortOptionSet(string $name): void
    {
        $len = \strlen($name);
        for ($i = 0; $i < $len; ++$i) {
            if (!$this->definition->hasShortcut($name[$i])) {
                $encoding = mb_detect_encoding($name, null, true);
                throw new RuntimeException(sprintf('The "-%s" option does not exist.', false === $encoding ? $name[$i] : mb_substr($name$i, 1, $encoding)));
            }

            $option = $this->definition->getOptionForShortcut($name[$i]);
            if ($option->acceptValue()) {
                $this->addLongOption($option->getName()$i === $len - 1 ? null : substr($name$i + 1));

                break;
            } else {
                $this->addLongOption($option->getName(), null);
            }
        }
    }

    /** * Parses a long option. */
    
/** * @return void */
    protected function parse()
    {
        foreach ($this->parameters as $key => $value) {
            if ('--' === $key) {
                return;
            }
            if (str_starts_with($key, '--')) {
                $this->addLongOption(substr($key, 2)$value);
            } elseif (str_starts_with($key, '-')) {
                $this->addShortOption(substr($key, 1)$value);
            } else {
                $this->addArgument($key$value);
            }
        }
    }

    /** * Adds a short option value. * * @throws InvalidOptionException When option given doesn't exist */
private function parseShortOptionSet(string $name): void
    {
        $len = \strlen($name);
        for ($i = 0; $i < $len; ++$i) {
            if (!$this->definition->hasShortcut($name[$i])) {
                $encoding = mb_detect_encoding($name, null, true);
                throw new RuntimeException(sprintf('The "-%s" option does not exist.', false === $encoding ? $name[$i] : mb_substr($name$i, 1, $encoding)));
            }

            $option = $this->definition->getOptionForShortcut($name[$i]);
            if ($option->acceptValue()) {
                $this->addLongOption($option->getName()$i === $len - 1 ? null : substr($name$i + 1));

                break;
            } else {
                $this->addLongOption($option->getName(), null);
            }
        }
    }

    /** * Parses a long option. */
    
Home | Imprint | This part of the site doesn't use cookies.