我真的被困在这一个,但我是一个Python(和树莓皮)新手。我只想从python脚本输出print输出。问题是(我相信)我的python脚本中的一个函数需要半秒钟的时间来执行,而PHP错过了输出。在
这是我的php脚本:<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$cmd = escapeshellcmd('/var/www/html/weathertest.py');
$output = shell_exec($cmd);
echo $output;
//$handle = popen('/var/www/html/weathertest.py', 'r');
//$output = fread($handle, 1024);
//var_dump($output);
//pclose($handle);
//$cmd = "python /var/www/html/weathertest.py";
//$var1 = system($cmd);
//echo $var1;
echo 'end';
?>
我已经包括了评论块,以显示我还尝试了什么。全部三个输出“静态文本结束”
这是python脚本:
^{pr2}$
py在命令行上执行得很好。我添加了3秒的延迟,以使脚本在我自己的测试中感觉更长。在
考虑到我总是得到static text作为输出,我想我的问题是PHP没有等待Adafruit命令。但对我来说最奇怪的是,如果我在命令行上执行PHP脚本,即php /var/www/html/test.php,那么我的三次PHP尝试都能正常工作,然后得到所需的输出:static text
Temp: 23.0C Humidity 34.0%
end
所以我想有两个问题:1。如何让PHP等待Python完成。2为什么PHP命令行与浏览器不同?在