バックグラウンドで処理をする(引数を渡す)
バッチ処理をする時など、バックグラウンドで処理をしたい時は往々にしてあります。
参考にしたところ
PHP第2回:PHP中級(外部プログラムの実行/バックグラウンドでの実行)
コマンドライン引数を受け取る - phpspot
上記のリンクを参考にして以下のコードを書きます。
execコマンドを使います
index.php
<?php exec("/bin/sh /usr/home/test/〜〜/sample.sh 1 2 > /dev/null &"); print "↑の 1 2 の部分が引数です。<br>"; print "実行終わりました<br>"; print "DATE:".date("Y/m/d H:i:s"); ?>
↓
今回はphpをcgiモードで実行するので、そのファイルを実行します。
sample.sh
/usr/local/bin/php-cgi-4.4.1 /usr/home/test/〜〜/sample.cgi $1 $2
↓
引数は$argvという配列に順番に入る。引数は[1]番目以降に入る
sample.cgi
#!/usr/local/bin/php-cgi-4.4.1 <?php $arr = $argv; ?>