如何让exec()函数完成在PHP中运行的时间?
在我的php脚本中,我调用了一个linux程序,我希望程序能够休眠一段时间(只要程序的可执行时间直到它完成)并且在它完成之后,该程序将运行后续脚本。
exec()
函数在以下脚本中运行。它将创建一个文件,它成功地解决了问题,否则它什么都不返回。但是,程序需要一些时间来创建文件或不返回任何内容。我意识到这个程序返回的时间有时比执行php脚本要长。这就是为什么我需要等待exec()
先完成,然后让exec()
之后的后续PHP脚本运行。
$cmd = $dir.$programName.self::SPACE.self::OPERATOR.self::SPACE.$dir.$domainFile
.self::SPACE.self::FACTS.self::SPACE.$dir.$inputFile.self::SPACE
.self::OUTPUT.self::SPACE.$outputFile;
$output = exec($cmd, $output, $return);
$solvable = false;
if (!file_exists($dir.$outputFile)) {
$solvable = false;
}else{
$solvable = true;
}
return $solvable;
答案 0 :(得分:0)
您可以将microtime用作PHP代码的开始和结束:
<?php
$time_start = microtime(true);
//Your Code goes here
$time_end = microtime(true);
$time = $time_end - $time_start;
echo "Process Time: {$time}";
?>
答案 1 :(得分:0)
<?php
$exec_starttime = microtime(true);
$result = exec("your command");
echo "execution time:" . (microtime(true) - $exec_starttime) . " seconds";
?>
php会等到你的命令完成,因为它需要将输出保存到$result
变量