【问题标题】:\yii\web\UploadedFile::getInstance not working File Update in REST API yii2\yii\web\UploadedFile::getInstance 不工作 REST API yii2 中的文件更新
【发布时间】:2016-06-10 07:05:28
【问题描述】:

嗨,我在 yii 2 \yii\web\UploadedFile::getInstance 中使用 REST API 没有在我的函数中获取文件。出于调试目的,我尝试使用 $_FILES['asset'] 使用值打印它。但没有使用 \yii\web\UploadedFile::getInstance 获取文件实例

$updateFile = $_FILES['asset']; //Printing values
$model->asset = \yii\web\UploadedFile::getInstance($model, 'asset'); //Not printing,its empty

有什么问题,我无法验证如果我使用$_FILES 处理文件。任何帮助将不胜感激!提前致谢

【问题讨论】:

    标签: rest file-upload yii2 yii-rest


    【解决方案1】:

    试试这个:

    getInstanceByName('asset');
    

    【讨论】:

    • 是的..它的作品!但不验证` $updateFile =UploadedFile::getInstanceByName('asset'); if($model->validate() && $updateFile) { $updateFile->saveAs(Yii::getAlias('@app') . '/web/uploads/'.$updateFile->name); $model->asset = $updateFile->name; }else{ $model->asset = $oldfile; }`
    【解决方案2】:

    如果您想使用UploadedFile::getInstance 方法,您的数据应该类似于$_FILES['Your_Model_Name']['asset']。试试这个,它会工作的。

    $updateFile = $_FILES['User']['asset']; //Printing values
    $model->asset = \yii\web\UploadedFile::getInstance($model, 'asset'); // Not printing, it's empty
    

    【讨论】:

    • 因为它的rest API调用,它不是必须有$_FILES['User'],它可以是任何名字。
    • 我们可以像 $model->asset = $_FILES['asset'];我不认为这个答案有帮助!
    猜你喜欢
    • 2023-03-06
    • 2019-12-25
    • 1970-01-01
    • 2023-03-25
    • 1970-01-01
    • 1970-01-01
    • 2015-05-30
    • 1970-01-01
    • 2018-02-04
    相关资源
    最近更新 更多