[PHP] コマンドラインの引数を取得するコード

PHP
コマンドラインでPHPを使う時に、引数の取得を行う処理。

$argv

引数の値を配列で取得できます。 ちなみに、配列[0]は、プログラム名になります。

argv.php

<?php print_r($argv);

実行

php argv.php a=1 Array ( [0] => argv.php [1] => a=1 )

getopt

getopt.php

getoptを使うと、引数に-aのようなshortオプション、--testのようなロングオプションを任意にしていできます。 想定していない値を取得できるようになるので、セキュアに扱えます。 $short = "a:b:"; $long = array('test:', 'hoge:'); $options = getopt($short, $long); print_r($options);

実行

php getopt.php -a 1 -b 2 --test aaa --hoge huga Array ( [a] => 1 [b] => 2 [test] => aaa [hoge] => huga )