php で外部出力でコマンドを実行する

外部からコマンドを実行する関数は思った以上にありますが(全部で6種類ぐらい?) 基本的な関数だと思っている2つ紹介します
phpのスクリプトからLinuxのコマンドを実行することを仮定しています。


<?php //$output はコマンドの結果 $return_varは戻り値がそれぞれ格納されている exec (コマンド,$output,$return_var); system(コマンド,$output,$return_var); ?>

おもにエラーの出力を表示するかしないかでわけ使うことが出来ますが基本は同じだと思います またWebページで使うphpのスクリプト内で使う場合はそのapacheやらnginxやらウェブページを動かしているプログラムに実行権限を与えないとコマンドが使えない場合があります(とくにroot 権限で動かす必要があるやつは注意かもしれないです) apacheならば visudo で apache に実行権限を与えるもしくはそのコマンド実体そのものに chmod やら chown で権限を与えるもしくは そのapachの設定ファイルに記載することもできます。 例

exec ("sudo service hogehoge restart",$output);
system ("ls",$return_var)