我有一個表格如何yii2創建一個目錄中的目錄和上傳文件到該目錄
<?php $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data']]); ?>
<?php echo $form->field($userformmodel, 'user_image')->fileInput(); ?>
<?= Html::submitButton('Submit', ['class' => 'btn btn-primary']) ?>
<?php ActiveForm::end(); ?>
我的形式上傳文件,並提交
In the model I have written the code as
public function rules()
{
return [
[['user_image'], 'file', 'skipOnEmpty' => false, 'extensions' => 'png, jpg']
];
}
public function upload()
{
if ($this->validate()) {
$this->user_image->saveAs('uploads/' . $this->user_image->baseName . '.' . $this->user_image->extension);
return true;
} else {
return false;
}
}
在我的控制器
public function actionProfile()
{
$model = new UserProfile();
$userformmodel = new UserForm();
$model->user_image = UploadedFile::getInstance($userformmodel, 'user_image');
if($model->save(false))
{
$model->upload();
}
}
這只是創建一個名爲uploads
的目錄。但是我想爲每個用戶在uploads目錄中創建一個目錄,即根據數據庫表user
中的主鍵我想創建並命名目錄名。
實施例中,如果用戶登記保存爲PrimaryKey的,然後用一個名稱必須創建和上傳他必須保存到該目錄的文件目錄。
如何使這發生?請幫忙。
那麼,你應該簡單地創建迪爾之前......你試過什麼? – soju
我沒有嘗試任何東西,因爲我發現任何相關的解決方案。如何創建一個子目錄 –
您是否搜索? http://stackoverflow.com/questions/4384951/how-to-create-destination-folder-in-php-while-using-move-uploaded-file – soju