Skip to content

getopt-php/getopt-php

Folders and files

NameName
Last commit message
Last commit date

Latest commit

9313ecd · Feb 11, 2025
Feb 11, 2025
Sep 8, 2019
Dec 13, 2022
Feb 11, 2025
Mar 11, 2022
Mar 24, 2022
Oct 3, 2019
Mar 10, 2022
Feb 10, 2021
Dec 23, 2013
Jul 2, 2017
Mar 24, 2022
Mar 24, 2022
Mar 24, 2022

Repository files navigation

GetOpt.PHP

.github/workflows/push.yml Test Coverage Maintainability Latest Stable Version Total Downloads License

GetOpt.PHP is a library for command-line argument processing. It supports PHP version 7.1 and above.

Releases

For an overview of the releases with a changelog please have look here: https://github.com/getopt-php/getopt-php/releases

Features

  • Supports both short (e.g. -v) and long (e.g. --version) options
  • Option aliasing, ie. an option can have both a long and a short version
  • Cumulative short options (e.g. -vvv)
  • Two alternative notations for long options with arguments: --option value and --option=value
  • Collapsed short options (e.g. -abc instead of -a -b -c), also with an argument for the last option (e.g. -ab 1 instead of -a -b 1)
  • Two alternative notations for short options with arguments: -o value and -ovalue
  • Quoted arguments (e.g. --path "/some path/with spaces") for string processing
  • Options with multiple arguments (e.g. --domain example.org --domain example.com)
  • Operand (positional arguments) specification, validation and limitation
  • Command routing with specified options and operands
  • Help text generation
  • Default argument values
  • Argument validation

Upgrading

If you are still using a legacy version of GetOpt.PHP, please consider upgrading to version 3.

Only a few adjustments to your code are required to benefit from a lot of improvements. Refer to the upgrade guide for details.

Documentation

License

GetOpt.PHP is published under the MIT License.