PHP には、system 関数、exec 関数、popen 関数、passthru、shell_exec 関数など、システム コマンドを実行するためによく使用される関数がいくつかあり、これらはすべてシステム コマンドを実行できます
#Exec 関数
Exec 関数の構文は次のとおりです: (推奨学習: PHP プログラミングの入門から熟練度まで )
exec ( string $command [, array &$output [, int &$return_var ]] )
=
exec('ping 127.0.0.1',$output,$return_var)
ログイン後にコピー
この関数の機能は、コマンド パラメーターで指定されたコマンドを実行することです。コマンド実行後の値は出力値の最後の行であり、関数自体は何も出力しません。
String、array、int はパラメータのデータ型で、それぞれ string、array、integer です。
角括弧は、前のパラメータが存在する場合、角括弧内のパラメータを書き込めるかどうかを意味します。たとえば、$command パラメータが存在する場合、$output パラメータはオプションです。$output パラメータが存在しない場合、$return_var は表示できません。
Command: 実行するコマンド。
出力: 出力パラメーターが指定されている場合、この配列にはコマンド実行の出力が入力され、出力の各行が配列内の 1 つの要素に入力されます。配列内のデータには、\n 文字などの末尾の空白文字は含まれません。配列にすでにいくつかの要素が含まれている場合、exec() 関数はその内容を配列の末尾に追加することに注意してください。配列の末尾に追加したくない場合は、unset() 関数を使用して配列をリセットしてから、exec() 関数に渡します。
return_var: Output パラメーターと return_var パラメーターの両方が指定された場合、コマンド実行後の戻りステータスがこの変数に書き込まれます。コマンドの実行が成功した場合、ステータス コードは 0 になり、コマンドの実行が失敗した場合、ステータス コードは 1 になります。
システム関数
システム関数の構文は次のとおりです:
system ( string $command [, int &$return_var ] )
=
system('ping -c 127.0.0.1',$return_var)
ログイン後にコピー
システムの C バージョンと同じです。 () function,this コマンドパラメータで指定されたコマンドを実行し、実行結果を出力する関数です。コマンド実行後の戻り値は出力値の最後の行であり、関数自体もすべての出力値を出力します。
String と int はパラメータのデータ型で、それぞれ文字列と整数です。
PHP がサーバー モジュールで実行されている場合、system() 関数は、出力の各行の後に Web サーバーの出力キャッシュを自動的に更新しようとします。
Command: 実行するコマンド。
return_var: return_var パラメータが指定されている場合、外部コマンド実行後のリターン ステータスがこの変数に設定されます。コマンドの実行が成功した場合、ステータス コードは 0 になり、コマンドの実行が失敗した場合、ステータス コードは 1 になります。
パススルー関数
パススルー関数の構文は次のとおりです。
passthru ( string $command [, int &$return_var ] )
=
passthru('ping 12.0.0.1',$return_var)
ログイン後にコピー
String と int は、そのデータ型です。それぞれパラメータ、文字列と整数。関数自体はすべての出力値を出力しますが、値を返しません。
exec() 関数と同様に、 passthru() 関数も外部コマンドの実行に使用されます。実行されたシステム コマンドがバイナリ データを出力し、ブラウザに直接送信する必要がある場合は、exec() 関数または system() 関数の代わりにこの関数を使用する必要があります。
Command: 実行するコマンド。
return_var: return_var パラメータが指定されている場合、Unix コマンドの戻りステータスがこのパラメータに記録されます。
Shell_exec 関数
Shell_exec 関数の構文は次のとおりです。
$output=shell_exec ( string $cmd )
=
$output=shell_exec(`ping 127.0.0.1`)
=
$output=shell_exec("ping 127.0.0.1")
ログイン後にコピー
cmd は、実行するコマンドです。
String はパラメータのデータ型であり、文字列です。この関数は、すべての出力値を文字列入力として入力し、コマンドの実行が完了した後に値を返します。また、それ自体は情報を出力しません。
Shell_exec 関数の使用法はバックティックと同じです。通常の一重引用符 ('') の代わりにバックティック (``) が使用されることに注意してください。
以上がphpコマンドの実行機能とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。