如何从php监控perl脚本


How do I monitor perl script from php

我有一个长期运行的perl脚本,它输出完成百分比。如何在php页面上实时显示完成状态?

示例:

perl:

my $i = 0;
for $i (1 .. 6) {
    print "$i'n";
    sleep 1;
}
print "script end'n";
exit;

php:

echo passthru('perl testprint.pl');

这可以显示输出,但不是实时的。

修改perl脚本,将输出通过管道传输到平面文件。使用php脚本解析该文件,并以您想要的任何格式输出。

您可以使用ajax从html页面调用php脚本,或者如果您将perl脚本保存在服务器的CGI目录中,则可以直接调用它,而不需要额外的php文件。

最后,创建一个漂亮的进度条和利润。

为此,您需要使用AJAX。

我会有一个PHP脚本来查看状态,然后让AJAX更新状态以供用户查看。