Хочу сделать загрузку файлов с сортировкой по датам. По задумке при загрузке/обновлении файла создается папка год, например, 2020, внутри 10, и дата, например, 11.
Код сделал таким. Должно все корректно работать, права указал, но файл не создается и папки соответственнно, тоже, сообщение "папка не создалась" тоже не вывелась. Скажите, пожалуйста, почему?
Код: Выделить всё
public function actionUpdate($id)
{
//проверка прав файл
$model = $this->findModel($id);
if (!Yii::$app->user->can('OwnSquad',['post'=>$model])) {
if (!Yii::$app->user->can('OwnSquad',['post'=>$model]))
{
throw new ForbiddenHttpException("Доступ запрещен");
}
}
if ($model->load(Yii::$app->request->post())){
$docs = UploadedFile::getInstance($model, 'docs');
if ($docs && $docs->tempName) {
$model->docs = $docs;
$image_name = $this->randomFileName($model->docs->extension);
$image_path = 'uploads/documents/' . date('d/m/Y') . '/' . $image_name;
if (file_exists($image_path)) {
mkdir('uploads/documents/' . date('d/m/Y') . '/' , 777, true);
}
else
echo 'не удалось создать папку';
$model->docs->saveAs($image_path);
$model->docs = $image_path;
} else {
$model->docs = $model->getOldAttribute('docs');
}
$model->save();
return $this->redirect(['view', 'id' => $model->id]);
}
return $this->render('update', [
'model' => $model,
]);
}