我的项目是Rasp Pi上的照明控制 使用Rasp Pi作为Web服务器&通过python脚本控制灯光 我使用PHP网站上的UI来控制光线
这是我的PHP代码
<?php
public function auto1()
{
system('sudo -u root -S python /var/www/4led/chktime1.py');
}
public function disauto1()
{
system('echo raspberry | sudo -u root -S pkill -f chktime1.py');
}
?>
当我按下网站上的开启按钮转动自动脚本它调用auto1并正常工作但这是循环脚本(我打算让它循环播放)但是当我按下关闭按钮它无法关闭它因为chktime1.py的循环仍然有效,无法在disauto1中打开其他脚本或命令。如何从PHP命令停止此脚本。
感谢您的帮助
答案 0 :(得分:0)
不确定您的问题是否已解决但可能对其他人有帮助。 您可以在PHP中触摸文件,并检查chktime1.py文件是否存在。
<form action="" method="post">
<input type="submit" name="start" value="start" />
<input type="submit" name="stop" value="stop" />
</form>
<?php
if(isset($_POST['start'])){
system('sudo -u root -S python /var/www/4led/chktime1.py');
}
if(isset($_POST['stop'])){
system('sudo -u root -S touch /var/www/4led/stop-script');
}
?>
你可以将它添加到你的Python
import os, sys
while(true):
#your code
if(os.path.isfile('/var/www/4led/stop-script')
break
os.system("sudo -u root -S rm /var/4led/stop-script")