Webmozart\Console\Api\Args\Format\ArgsFormatBuilder::getArgument PHP Method

getArgument() public method

You can either pass the name of the argument or the 0-based position of the argument.
public getArgument ( string | integer $name, boolean $includeBase = true ) : Argument
$name string | integer The argument name or its 0-based position in the argument list.
$includeBase boolean Whether to include arguments in the base format in the search.
return Argument The argument.
    public function getArgument($name, $includeBase = true)
    {
        if (!is_int($name)) {
            Assert::string($name, 'The argument name must be a string or integer. Got: %s');
            Assert::notEmpty($name, 'The argument name must not be empty.');
        }
        Assert::boolean($includeBase, 'The parameter $includeBase must be a boolean. Got: %s');
        if (is_int($name)) {
            $arguments = array_values($this->getArguments($includeBase));
            if (!isset($arguments[$name])) {
                throw NoSuchArgumentException::forPosition($name);
            }
        } else {
            $arguments = $this->getArguments($includeBase);
            if (!isset($arguments[$name])) {
                throw NoSuchArgumentException::forArgumentName($name);
            }
        }
        return $arguments[$name];
    }

Usage Example

 /**
  * @expectedException \InvalidArgumentException
  */
 public function testGetArgumentFailsIfIncludeBaseNoBoolean()
 {
     $this->builder->getArgument('argument', 1234);
 }