0
PHP file.php arg1 arg2

arg1今、私はハードコーディングしたいのですarg2file.php、どうすればいいですか?

4

3 に答える 3

1

試したことはありませんが、引数は特定の配列に含まれてい$argvます。したがって、ハードコーディングする場合は、これらのエントリを設定する必要があります。

$argc = 3; // number of arguments + 1
$argv[0] = 'file.php'; // contains script name
$argv[1] = 'arg1';
$argv[2] = 'arg2';

$argv予約変数です

ただし、コマンド ラインで指定した最初の 2 つのパラメータは常に と で上書きされることに注意しarg1arg2ください。

代わりに、スクリプトで常にこれらの値が必要な場合は、スクリプトの先頭で通常の変数として定義する必要があります。

$var1 = 'arg1';
$var2 = 'arg2';

または定数としても:

define('CONST1', 'arg1');
define('CONST2', 'arg2');

arg1コマンド ライン経由でパラメータとして,を提供するだけの場合は、 andarg2を介してアクセスするだけで済みます。$argv[1]$argv[2]$argv

于 2010-03-04T07:34:49.473 に答える
0

引数を取得するには、php スクリプト内でargv()を使用します。

foreach ($argv as $args){
  print $args."\n";
}

要素 0 にはスクリプト名が含まれます。残りは引数です。

于 2010-03-04T07:35:26.197 に答える
0

関数への引数の数をテストし、それに応じて何かをしたいとします。

 function foo()
    {
       $numargs = func_num_args();
       echo "Number of arguments: $numargs<br />\n";
       if ($numargs >= 2) {
           echo "Second argument is: " . func_get_arg(1) . "<br />\n";
       }
       $arg_list = func_get_args();
       for ($i = 0; $i < $numargs; $i++) {
           echo "Argument $i is: " . $arg_list[$i] . "<br />\n";
       }
    }

    foo(1, 2, 3);
于 2010-03-04T08:19:15.567 に答える