WindowsXPでコマンドラインからPHPを実行しようとしています。
PHPスクリプトにパラメーターを提供できないという事実を除いて、これは機能します。
私のテストケース:
echo "param = " . $param . "\n";
var_dump($argv);
私はこれを次のように呼びたいです:
php.exe -f test.php -- param=test
しかし、パラメーターを受け入れるスクリプトを取得することはありません。
上記のスクリプトから得られる結果:
PHPの注意:未定義の変数:2行目のC:\test.phpのパラメーター
param = ''
array(2) {
[0]=> string(8) "test.php"
[1]=> string(10) "param=test"
}
PHP5.2.6を使用してこれを試しています。これはPHP5のバグですか?
パラメータの受け渡しは、オンラインヘルプで処理されます。
注:スクリプトに引数を渡す必要がある場合は、-fスイッチを使用するときに最初の引数として--を渡す必要があります。
これはPHP4では機能しているように見えましたが、PHP5では機能していませんでした。
PHP 4では、コマンドラインを変更せずにサーバーで実行できるのと同じスクリプトを使用できました。これは、ローカルデバッグ、たとえば、出力をファイルに保存して調査する場合に便利です。