大佬教程收集整理的这篇文章主要介绍了我如何在 PHP Yii2 中的动态位置保存文件?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我想根据公司 ID 将文件保存到目录中,就像公司的 ID 为 11 那么它应该创建一个同名的文件夹并在那里保存/上传文件? 我在这里有我的控制器逻辑,但我不知道如何将公司模型中的公司 ID 传递给 saveAs() 函数。
场景:我有来自不同模型的公司列表,我想根据公司 ID/名称创建一个目录,其中保存相应的布局。
public function actionCreate()
{
$company=Company::find()->all();
$model = new Layouts();
// if ($model->load(Yii::$app->request->post()) && $model->save()) {
// return $this->redirect(['vIEw','ID' => $model->layout_ID]);
// }
$model->setScenario('create');
if ($model->load(Yii::$app->request->post())) {
$model->layouts=Uploadedfile::geTinstance($model,'layouts');
if(!empty($model->layouts)){
$filename=time()."_layouts".".". $model->layouts->extension;
$model->layouts->saveAs('@app/web/uploads/layouts/'.$fileName); //here i want it to be @app/web/uploads/layouts/company-ID/filename
$model->layouts=$filename;
$model->created_by=Yii::$app->user->ID;
$model->updated_by=Yii::$app->user->ID;
}else{
var_dump($model->errors);dIE;
}
if($model->save()){
Yii::$app->session->addFlash('@R_489_6048@s','Record Created @R_489_6048@sfully');
return $this->redirect(['vIEw','ID'=>$model->ID]);
}else{
Yii::$app->session->addFlash('error','Record Can not be Created ');
}
return $this->render('create',[
'model' => $model,'company'=>$company
]);
}
}
你应该先创建文件夹,
\yii\Helpers\FileHelper::createDirectory(\Yii::getAlias('@app/web/uploads/layouts/'.$model->id),0777);
以上是大佬教程为你收集整理的我如何在 PHP Yii2 中的动态位置保存文件?全部内容,希望文章能够帮你解决我如何在 PHP Yii2 中的动态位置保存文件?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。