4

私はアイデアを持っています、そして私はローカルホストで実行されている単一のphpローカルWebページを持っています

そして私は3つのボタンにGUIを使いたい:シャットダウンスリープ、そして再起動

PHPはこれらの操作を許可していますか?PHPでクラスやメソッドを書く準備はできていますか?

4

4 に答える 4

12

Apache/PHP 構成が の使用を許可するようにセットアップされている場合はsystem、それを使用できます。

*nix システムの場合:

system('shutdown now');    // shutdown
// or
system('reboot');          // reboot
system('shutdown -r now'); // also reboot :)

Windows の場合:

system('shutdown -t -s 0'); // shutdown
// or
system('shutdown -r -t 0'); // reboot

詳細はこちら。

*nix でのスリープ/スタンバイに関する限り、大きく異なります。


shell_exec():またはも使用できますexec()


編集:

user1597430 のコメントによると、* nix システムでは、-h(halt) オプションを渡すことができます。これは、基本的に CPU をシャットダウンして停止しますが、主電源は切断しません。

system('shutdown -h now'); // shutdown and halt
system('shutdown -P now'); // shutdown and power off

Server faultには、これに関する優れた回答がいくつかあります

于 2012-11-24T06:42:51.557 に答える
4

ほとんどすべての言語は、システム コールを実行する必要があります。

shutdown -s -t 0

それは多かれ少なかれ魔法の弾丸です。たとえば、Java では次のように呼び出すことができます。

public static void main(String arg[]) throws IOException{
    Runtime rt = Runtime.getRuntime();
    Process proc = rt.exec("shutdown -s -t 0");
    System.exit(0);
}

PHPはこのようなものになります

<?php
exec ('shutdown -s -t 0');
?>

しかし問題は、PHP は Web サーバーによってコンパイルされたインタープリター言語であり、エンド ユーザーによって実行されるように通知されるため、おそらくそのような動作にはかなり厄介です。チェーンソーで爪を切るようなものです...

于 2012-11-24T06:40:55.067 に答える
0

Windows では、PHP を使用して .bat ファイルを実行できます。

<?php echo exec('reboot.bat'); ?>

.bat ファイルの内容:

シャットダウンの例:

C:\Windows\system32\shutdown.exe -s -c "コンピューターをシャットダウンします。"

再起動の例:

C:\Windows\system32\shutdown.exe -r -c "最新の更新のために再起動しています。"

StandByModus

rundll32.exe powrprof.dll,SetSuspendState
于 2016-10-17T16:33:42.727 に答える
0

php からシェル スクリプトを呼び出して、コンピューターをシャットダウン、スリープ、再起動することができます。Linux ベースのマシンでは実行できますが、Windows PC で可能かどうかはわかりません。

于 2012-11-24T06:39:29.927 に答える