如何解决为什么文件没有上传到队列中的服务器?
我在队列中上传文件时遇到问题。我使用 Yii2 及其带有 redis 驱动程序的包“yiisoft/yii2-queue”。我从表单中获取文件
$task->video_file = UploadedFile::getInstance($task,'video_file');
然后将其推入队列
$this->video = hash('MD5',$this->video_file->baseName . floor($this->task_id / 100)) . '.' . $this->video_file->extension;
$filepath = $this->getRelativeVideoPath() . $this->video;
Yii::$app->queue->push(new TaskVideoJob([
'file' => $this->video_file,'path' => $filepath,]));
然后
class TaskVideoJob extends BaseObject implements JobInterface {
public $file;
public $path;
public function execute($queue) {
if (!$this->file->saveAs($this->path))
{
file_put_contents('test.txt','(');
}
}
}
文件路径正确。我可以保存文件,只需使用 $this->video_file->saveAs($filepath),但不在队列中。我检查了队列中的文件是 UploadedFile 的实例,并且没有错误。但是仍然不能使用saveAs 或copy 或move_uploaded_file。日志中没有错误。作业已排队并处于“完成”状态。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。