【PHP】PHPから非同期でシェルを実行

ちょっとしたバッチ処理を手動で実行したい。
でも、そのPHPファイルはドキュメントルート以外にある場合、
コマンドライン実行でスクリプトを起動する。

<?php
    exec('php /var/www/test.php > /dev/null &');
?>

exec() にフルパスでスクリプトを指定するだけ。
「/dev/null &」を付けることで、
呼び出し先のスクリプトの実行が終了する前に次の処理に移れる。

実行するとパーミッションエラーが出るときは、
SELinux or ディレクトリの権限が原因なので、
SELinux を off にして検証したり、ディレクトリ権限を変更して実行してみる。

シェルがログアウトしても実行し続けるようにするのであれば、
nohup が必要になる。
http://d.hatena.ne.jp/pospome/20140225/1393305695