yii获取上传文件的文件类型和文件大小-

llmtgqce  于 2022-11-09  发布在  其他
关注(0)|答案(3)|浏览(296)

我需要帮助,以获得我上传的文件的文件和类型。
我的控制器是下一个:

public function actionUpload()
    {
        $model=new Entryfile;
        $exstansion = Extansion::model()->findAll();
        $some = array();
        foreach ($exstansion as $key=>$value)
        $some[$value->idExt]=$value->ExtansionName;
        if(isset($_POST['Entryfile'])) {
             $model->attributes=$_POST['Entryfile'];
             //$model->uUserID = $_POST['User']['uUserID'];
             //Yii::import('ext.helpers.EDownloadHelper'); 
             //EDownloadHelper::download(Yii::getPathOfAlias('dms.upload').DIRECTORY_SEPARATOR.'name');
             $model->eeFileName=CUploadedFile::getInstance($model,'eeFileName');
             if($model->save()) {
                 $model->eeFileName->saveAs('upload/'.$model->eeFileName->name);
                 $this->redirect(array('view','id'=>$model->eeEntryFileID));
             }
        }
        $this->render('upload',array('model'=>$model, 'exstansion'=>$some));
    }

我需要文件大小和文件类型的解决方案。我想保存文件和大小在数据库表。但我需要一步一步的指令,在代码中,如果可能的话。

fd3cxomn

fd3cxomn1#

您可以通过getSize()方法获得文件大小:

$size=$model->eeFileName->getSize();

您可以通过使用getType()

$type=$model->eeFileName->getType();

有关详细信息,请查看CUploadedFileDocuments .

sg3maiej

sg3maiej2#

请阅读以下文档链接Click Me!!!中的所有属性和方法
您的要求是使用公共属性size或公共方法getSize()检查文件大小,但对于文件类型,不要使用getType()
您使用CFileHelpe::getMimeType() Click Me!!!而不是getType()方法,因为getType()不会在服务器端进行检查。

z8dt9xmd

z8dt9xmd3#

1.用于获取扩展名

$extension = $model->file->extension;

1.用于获取大小

$size = $model->file->size;

相关问题