[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
)