Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从PHP调用无休止的Python脚本_Php_Python_Raspberry Pi_Infinite Loop - Fatal编程技术网

从PHP调用无休止的Python脚本

从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

我有一个调用python脚本的PHP脚本。两者都运行在同一个Linux服务器上

Python脚本在“while true”循环中运行。现在,当我启动PHP脚本时,它一直处于一个无休止的循环中,而且永远不会结束

如果在Python中删除循环,PHP将正常运行

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>