我有一个想法,我在localhost上运行了一个php本地网页
我希望将GUI用于3个按钮:关闭,睡眠和重启
PHP允许我进行这些操作吗?是否已准备好在PHP中编写类,方法?
答案 0 :(得分:9)
如果您的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
(暂停)选项,该选项基本上会关闭并暂停 CPU但不会断开主电源。
system('shutdown -h now'); // shutdown and halt
system('shutdown -P now'); // shutdown and power off
答案 1 :(得分: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是一种解释型语言,由一个网络服务器编译,该信号由最终用户运行,因此对于这种行为来说可能很麻烦。就像用电锯修剪指甲一样......
答案 2 :(得分:0)
你可以从php调用shell脚本,这将关闭,睡眠并重新启动计算机,它可以在基于linux的机器上完成,但不确定它是否可以在Windows PC上运行
答案 3 :(得分:0)
您可以在Windows上使用PHP执行.bat文件。
<?php echo exec('reboot.bat'); ?>
.bat文件的内容:
关机示例:
C:\Windows\system32\shutdown.exe -s -c "Shutdown the computer."
重启示例:
C:\Windows\system32\shutdown.exe -r -c "Rebooting for latest updates."
StandByModus
rundll32.exe powrprof.dll,SetSuspendState