上传文件怎么样自定义文件名?


$model->image=CUploadedFile::getInstance($model,'image');

if($model->image)

    $model->image->saveAs(Yii::app()->basePath.'/../uploads/'.$model->image);

上传时怎么样重新设置文件名,以确保保存时文件名重复不致于被覆盖!

saveAs里面的文件名自己弄个不会重复的就行了

关键是类型不好判断.

CUploadedFile::getInstance($model,‘image’)->type这里是文件类型,不是扩展名,是不是还得用switch语句列出来呢?

我知道怎么获取扩展名了CUploadedFile::getInstance($model,‘image’)->extensionName,这样就可以了,文件名我可以设置成时间戳,解决了!

$model->attributes=$_POST['UsersProfile'];


		$form=CUploadedFile::getInstance($model, 'image');


		if($form != null)


			$model->image=$this->imageName($form->name);


		//$model->image->name=$this->imagePath($model->image->name);


		if($model->save())


		{


			if($form != null)


				$form->saveAs(UsersProfile::IMAGE_PATH.$model->image);


			$this->redirect(array('view','id'=>$model->id));


		}	


private function imageName($imageName)


{


   $imageName = time().rand(1000,2000).$imageName;


   return $imageName; 


}

不要用数据库里存在的字段来存储CUploadedFile::getInstance($model, ‘image’);我自定义了一个参数来存储它,这样就可不不覆盖了,反正确决了,原来不怎么清楚。。。 ;D