Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.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中如何在shell_exec之前回显文本_Php_Echo - Fatal编程技术网

在PHP中如何在shell_exec之前回显文本

在PHP中如何在shell_exec之前回显文本,php,echo,Php,Echo,请帮我解决这个PHP问题。PHP文件将根据用户请求调用python文件。这条巨蟒正在执行一项任务。我想在执行python文件之前回显文本。因为我希望PHP对它将要做的事情发出警告 为了给你提供信息,我尝试了一个python的虚拟文件。python的代码只是为了睡眠(10) 对于PHP代码,我尝试使用ob_flush;,ob_start();等等。代码如下。至于提醒。algorithm.py仅包含10秒睡眠: ob_start(); echo "welcome"; ob_flush(); usle

请帮我解决这个PHP问题。PHP文件将根据用户请求调用python文件。这条巨蟒正在执行一项任务。我想在执行python文件之前回显文本。因为我希望PHP对它将要做的事情发出警告

为了给你提供信息,我尝试了一个python的虚拟文件。python的代码只是为了睡眠(10)

对于PHP代码,我尝试使用ob_flush;,ob_start();等等。代码如下。至于提醒。algorithm.py仅包含10秒睡眠:

ob_start();
echo "welcome";
ob_flush();
usleep(1);
$output=shell_exec("./$algorithm.py");
即使使用此代码,它也只能在完成shell_exec后回显文本。我试着使用exec。文本显示仍然延迟。

可以使用

ob_implicit_flush(true)
ob_start();

echo('Task is being done');

ob_flush();

$output=shell_exec("./$algorithm.py");
echo('Wait...');

ob_flush();

echo('done.');
ob_end_flush();
echo“欢迎”。$output.“;

首先需要使用
ob_flush()仅当您实际使用缓冲区时,但您肯定应该使用
flush()
。其次,不能保证浏览器将显示部分接收到的响应,这不是http协议的目的。您可能很幸运,但为了确保这一点,您需要使用一种更复杂的方法,使用客户端逻辑(javascript和ajax或web套接字)不断地从服务器中提取状态信息,并在已经加载的页面中对其进行可视化。
echo "welcome"."<pre>".$output."</pre>";