Php 两个正在进行的过程取得进展
当用户上传视频时,我会进行两次转换。高分辨率和低分辨率。我在上载处理脚本中使用popen(),并为每次转换运行linux ffmpeg转换命令。当我过去只有一次转换时,我只是根据popen的输出计算进度,并将其放入数据库表(Php 两个正在进行的过程取得进展,php,mysql,Php,Mysql,当用户上传视频时,我会进行两次转换。高分辨率和低分辨率。我在上载处理脚本中使用popen(),并为每次转换运行linux ffmpeg转换命令。当我过去只有一次转换时,我只是根据popen的输出计算进度,并将其放入数据库表(conversion\u progress),然后将其更新为进程输出的结果 现在我要做的是在我的转换进度表中插入两个条目,并计算每个进度的差异。但是,当我使用select语句时,由于两个条目具有相同的vid_id,我无法区分每个进程,因为返回了两行。我不需要,我只想得到两行的
conversion\u progress
),然后将其更新为进程输出的结果
现在我要做的是在我的转换进度表中插入两个条目,并计算每个进度的差异。但是,当我使用select语句时,由于两个条目具有相同的vid_id,我无法区分每个进程,因为返回了两行。我不需要,我只想得到两行的平均值。有人对此有什么建议吗
$sql = 'SELECT progress from conv_progress WHERE vid_id=?';
$stmt4 = $conn->prepare($sql);
$result=$stmt4->execute(array('123')) or die(print_r($db->errorInfo(), true));
while ($row=$stmt4->fetch(PDO::FETCH_ASSOC)){
$data['progress']=$row['progress'];
}
$out = json_encode($data);
print $out;
返回5070,表示一次上载为50%,另一次上载为70%。我可以使用foreach或其他工具对此进行计算吗?您可能希望让MySQL取平均值:
$sql = 'SELECT AVG(progress) AS progress from conv_progress WHERE vid_id=? GROUP BY vid_id';