PHP:从exec()创建的文件始终为空

时间:2018-10-24 12:15:44

标签: php linux daemon lampp

我想用exec PHP 中执行命令。

如果我通过第二个参数$out并从命令行启动脚本,它将等待执行结束。

但是,如果我从浏览器启动它,浏览器会立即显示结果。

该命令执行一些单元测试,并将输出存储在文件($last)中,我想在浏览器中显示该文件。

然后创建一个日志文件($logfile)。然后,来自command的文件将被格式化为nl2br()用于html打印。

我认为用户守护进程存在一些权限问题,但是如果我为守护程序授予项目或/opt/lamp/htdocs/project上文件的权限,则创建的文件始终为空。

exec($command , $out);

date = new DateTime();
$timestamp = $date->format('Y-m-d H:i:s');
$filehandle = fopen($lastlog, 'r');
$filetext = fread($filehandle, filesize($lastlog));
$formattext = nl2br($filetext);

$last = file_put_contents($lastlog, $formattext);
$logfile = file_put_contents($projectdir . 'logs/' . $specfile . '/' . $timestamp . '.txt', $filetext);

0 个答案:

没有答案