我想将图片上传到服务器,并尝试使用我在DoingITeasyChannel的YouTube视频中看到的代码取得成功。
但是,它适用于轻量级(150 Kb)文件;我试图上传3.1 Mb图像,程序中断。 这是我的代码:
public function actionCreate()
{
$model = new Images();
if ($model->load(Yii::$app->request->post())) {
$model->file = UploadedFile::getInstance($model, 'file');
$fileName = $model->category.''.date('U').'.'.$model->file->extension;
// save the path in db
$model->location = '/yii_advance/frontend'.'/web/images/'.$fileName;
$model->file->saveAs(Yii::getAlias('@frontend').'/web/images/'.$fileName);
// crea y guarda el thumbnail de la imagen subida
Image::thumbnail(Yii::getAlias('@frontend').'/web/images/'.$fileName, 220, 120)
->save(Yii::getAlias('@frontend').'/web/images/thumbs/'.$fileName, ['quality' => 80]);
$model->thumbLocation = '/yii_advance/frontend'.'/web/images/thumbs/'.$fileName;
$model->save();
return $this->redirect(['view', 'id' => $model->id]);
}
else {
return $this->render('create', [
'model' => $model,
]);
}
}
有人能帮助我吗?
注意: 我没有使用缩略图部分进行测试,我认为该解决方案可以运行" $ model-> save()"并且"返回"完成上传后。
答案 0 :(得分:0)
好的,就像user1852788说的那样,解决方案是在我的php.ini文件中。 我不得不更改upload_max_filesize属性,限制为2M。
感谢。