Get Options in PHP CLI

PHP: 7.4

在 PHP CLI 環境中,如果想要抓取常用的 Option,像是 --name、-v 等等的用法,可以透過 getopt 函式來處理。

Usage

參數有分兩種型式:

  • options:以 單個連字號(-)字母 為主,-v-h
  • long-options:以 兩個連字號(--)單字 為主,--version--help

輸入模式則分為三種:

  • 字符 :單個字符,表示不需要輸入值,通常當開關來使用,例如 --enable
  • 字符: :必填參數,會在字符後面以 : 表示,例如 --name FallZuBallBall
  • 字符:: :選填參數,會在字符後面以 :: 表示,例如 --root-path /home/fallzuballball

command

php main.php -n 50 -v --version --help --name FallZuBallBall

範例 main.php

// getopt 第一個參數為 options,以字串描述單一字符的參數
// getopt 第二個參數為 longopts,以陣列描述單字的參數
$options = getopt('n:v', ['version::', 'help::', 'name:']);

// 注意:當有不需要輸入值的參數,該參數會得到 false,如果沒有則會 null
// 因此範例中的 v 、version、help 參數都會得到 false
var_dump($options);
Categories: PHP