html - YII2 下载表单后端电影无压缩
问题描述
用户从前端上传文件,之后管理员必须下载视频,但是当我尝试下载它时,相同的视频被压缩......当我下载大小为 10MB 时,视频的实际大小为 28MB,电影是破碎的 ...
这是下载代码:
<a href="<?=$video->getFilePath($video->id)?>" download="<?=$video->video_link?>" class="btn btn-danger" role="button">download</a>
后端模型:
public function getFilePath($id){
if(isset($id)) {
$video = ChildVideo::findOne($id);
if ($video) {
$path = Yii::$app->urlManagerFrontend->baseUrl . "/child_video/" . $this->getImageFolderName($id) . "/" . $video->video_link;
}
}
}
在这里我上传一个视频
$modelVideo->setVideoFolder();
$modelVideo->videoFiles = UploadedFile::getInstances($model, 'videoFiles');
if (isset($modelVideo->videoFiles) and count($modelVideo->videoFiles) > 0) {
foreach ($modelVideo->videoFiles as $key => $file) {
$sqllastVideo = "SELECT id FROM child_video WHERE child_id=".$model->user_id." ORDER BY id DESC LIMIT 1";
$lastVideo = Yii::$app->db->createCommand($sqllastVideo)->queryOne();
$countlastVideo = ChildVideo::find()->where('child_id=:child_id',[':child_id'=>$model->user_id])->orderBy('id DESC')->all();
if(count($countlastVideo)<=1 or $lastVideo[0]['id'] = Null) {
$orderlastVideo = 1;
}else{
$orderlastVideo = $lastVideo['id'] + 1;
}
$file->saveAs(Yii::getAlias('@frontend/web') . '/child_video/'.$model->getImageFolderName().'/video_' . $model->user_id . '_' . ($orderlastVideo) . '.' . $file->extension);
$pic = Yii::getAlias('@frontend/web') . '/child_video/'.$model->getImageFolderName().'/video_' . $model->user_id . '_' . ($orderlastVideo) . '.' . $file->extension;
$modelVideos = new ChildVideo;
$modelVideos->child_id = $model->user_id;
$modelVideos->video_link = 'video_'. $model->user_id . '_' . ($orderlastVideo) . '.' . $file->extension;
$modelVideos->active = 3;
$modelVideos->save(false);
Yii::$app->session->setFlash('success', Yii::t('app', 'app.Your video is upload successfully!'));
}
}
解决方案
推荐阅读
- python - 根据自己的需要扩展 Python 语法:有多难?它会破坏 Anaconda 吗?
- python - 运行 Docker-Image 时出现 ModuleNotFoundError
- python - 基于列值的分组和随机样本
- java - Apache NiFi:每当修改表记录时如何从 Cassandra 表中获取数据
- autodesk-forge - Autodesk Forge 查看器 - 单击通过 SceneBuilder 创建的模型上的事件
- javascript - 如何从 JavaScript 中的两个数组创建一个 json 对象
- javascript - 输入和模型未正确填充数据
- javascript - 如何检索鼠标相对于元素的位置
- .net - inspect.exe 或 VisualUIAVerifyNative.exe 如何在内部发送点击?
- php - 在 PHP 中使用 foreach 语句回显一个 3 维数组