[PHP] コマンドラインオプションを取得する
作成日: 2020年07月01日
-a
や -b
のようなハイフン 1 つから始まるコマンドラインオプションを取得する場合、getopt
関数に下記のように引数を渡します。
<?php
$options = getopt('a:b:');
var_dump($options);
このスクリプトのファイル名を sample.php
としたときに、php sample.php -a hoge -b moge
を実行すると、実行結果は下記となります。
array(2) {
["a"]=>
string(4) "hoge"
["b"]=>
string(4) "moge"
}
--alpha
や --beta
のようなハイフン 2 つから始まるコマンドラインオプションを取得する場合は、第 2 引数に下記のように値を渡します。第 1 引数は使用しないため、null を渡しています。また、第 1 引数と異なり、第 2 引数は配列を渡します。
<?php
$options = getopt(null, ['alpha:', 'beta:']);
var_dump($options);
このスクリプトのファイル名を sample.php
としたときに、php sample.php -alpha hoge -beta moge
を実行すると、実行結果は下記となります。
array(2) {
["alpha"]=>
string(4) "hoge"
["beta"]=>
string(4) "moge"
}