首页 > 解决方案 > PHP - shell_exec 的替代品

问题描述

我在连接到离线服务器的本地计算机上使用 PHP 脚本。该服务器上有一个处理一些自制脚本的网页。这一切都很好。但是,我的设置目前看起来像这样

<?php
echo shell_exec(./script1)
echo('Script 1 Done!' .PHP_EOL);
echo shell_exec(./script2)
echo('Script 2 Done!' .PHP_EOL);
echo shell_exec(./script3)
echo('Script 3 Done!' .PHP_EOL);
echo('All Done! .PHP_EOL);
?>

这很好并且有效。但是,这些脚本中的每一个都有大量的输出。在我的代码中看似随机的任意点,网页刷新并在白色背景上显示该输出。我对此很好,除了随机的、任意的点。

是否有可能让这个实时做到这一点?我什至不确定谷歌如何解决这个问题,因为我尝试过的任何东西似乎都没有相关性。

标签: phppage-refresh

解决方案


只需将输出捕获到一个数组中,然后您可以控制何时想要输出(如果您决定要输出)。

<?php
$shellOutput = [];
$shellOutput[] = shell_exec('./script1');
$shellOutput[] = shell_exec('./script2');
$shellOutput[] = shell_exec('./script3');

//then when you want to output a simple foreach will do the trick.
foreach($shellOutput as $output){
    echo $output;
}

?>

推荐阅读