コマンドライン PHP スクリプトへの変数の受け渡し
crontab を使用してコマンドラインから PHP スクリプトを実行する場合、受け渡し時に問題が発生する可能性があります。変数。クエリ文字列 (myfile.php?type=daily) で試行した構文は、このコンテキストではサポートされていません。
この問題を解決するには、変数を引数として PHP 実行可能ファイルに渡します。コマンドを次のように置き換えます:
php myfile.php daily
PHP スクリプト内で、$argv 配列から変数を取得します:
$type = $argv[1]; // Assuming '$argv[0]' contains the script name
代替アプローチ:
スクリプトが Web ページとしても使用される場合は、2 つのオプションがあります:
#!/bin/sh wget http://location.to/myfile.php?type=daily
if (defined('STDIN')) { $type = $argv[1]; } else { $type = $_GET['type']; }
$argv 配列に必要な変数が含まれていることを確認し、必要に応じてエッジ ケースを処理することを忘れないでください。
以上がコマンドライン PHP スクリプトに変数を渡すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。