从PHP调用无休止的Python脚本
我有一个调用python脚本的PHP脚本。两者都运行在同一个Linux服务器上 Python脚本在“while true”循环中运行。现在,当我启动PHP脚本时,它一直处于一个无休止的循环中,而且永远不会结束 如果在Python中删除循环,PHP将正常运行 PHP: 编辑:从PHP调用无休止的Python脚本,php,python,raspberry-pi,infinite-loop,Php,Python,Raspberry Pi,Infinite Loop,我有一个调用python脚本的PHP脚本。两者都运行在同一个Linux服务器上 Python脚本在“while true”循环中运行。现在,当我启动PHP脚本时,它一直处于一个无休止的循环中,而且永远不会结束 如果在Python中删除循环,PHP将正常运行 PHP: 编辑: 如何使用PHP正确启动带有无限循环的Python脚本?好的,一个选项是在shell_exec()函数中包含Linux“&”。这使得命令在后台运行,但您无法(轻松地)在脚本中停止它。 然后代码变为(注意“&”): PHP
如何使用PHP正确启动带有无限循环的Python脚本?好的,一个选项是在shell_exec()函数中包含Linux“&”。这使得命令在后台运行,但您无法(轻松地)在脚本中停止它。 然后代码变为(注意“&”):
PHP
这将使脚本永远在后台运行,或者至少直到Pi重新启动为止。好的,一个选项是在shell_exec()函数中包含Linux“&”。这使得命令在后台运行,但您无法(轻松地)在脚本中停止它。
exec() — Execute an external program
for more details [php manual][1]
然后代码变为(注意“&”):
PHP
这将使脚本永远在后台运行,或者至少直到Pi重新启动。感谢Robert Diepeveen
exec() — Execute an external program
for more details [php manual][1]
/dev/null&
这是丢失的那块
<html>
<head>
<title>PHP</title>
</head>
<body>
<?php
shell_exec('sudo python /home/pi/blink.py 1 > /dev/null &');
?>
</body>
PHP
感谢罗伯特·迪佩文 /dev/null& 这是丢失的那块
<html>
<head>
<title>PHP</title>
</head>
<body>
<?php
shell_exec('sudo python /home/pi/blink.py 1 > /dev/null &');
?>
</body>
PHP
你的问题到底是什么?@Robert:我想是:“如何使用PHP正确启动带有无限循环的Python脚本?”。你想停止循环吗?是的,我想启动带有无限循环的Python脚本。从PHPWhy开始,你为什么不添加
&
让它在后台运行?你的问题到底是什么?@Robert:我猜是:“如何使用PHP正确启动具有无限循环的Python脚本?”。你想停止循环吗?是的,我想启动具有无限循环的Python脚本。从PHPWhy你不添加&
让它在后台运行?不幸的是,参数“&”没有改变任何东西。PHP脚本在无休止的循环中继续。对,可能是因为输出应该重定向到/dev/null。于是它变成了“shell_exec('sudopython/home/pi/blink.py 1>/dev/null&')。这行吗?不幸的是,参数“&”没有改变任何东西。PHP脚本在无休止的循环中继续。对,可能是因为输出应该重定向到/dev/null。于是它变成了“shell_exec('sudopython/home/pi/blink.py 1>/dev/null&')。这行吗?我试过命令:exec('sudopython/home/pi/blink.py1&',$output,$return\u var);但结果是sameI尝试了以下命令:exec('sudopython/home/pi/blink.py1&',$output,$return\u var);但结果是一样的
<html>
<head>
<title>PHP</title>
</head>
<body>
<?php
shell_exec('sudo python /home/pi/blink.py 1 > /dev/null &');
?>
</body>