[英]How to stop python script when run it from Website (php)
我的项目是 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');
}
?>
当我按下网站上的 on 按钮打开自动脚本时它调用 auto1 并正常工作但这是循环脚本(我打算让它一直循环)但是当我按下关闭按钮时它无法关闭它,因为 chktime1 的循环.py 仍在工作,无法在 disauto1 中打开其他脚本或命令。 如何从 PHP 命令停止此脚本。
谢谢你的帮助
不确定您的问题是否已解决,但也许对其他人有帮助。 您可以在 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/www/4led/stop-script")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.