海豚框架之單文件上傳

我在網上找到的關於文件上傳部分,而後記錄下來,方便下次使用。php

寫一個公共函數用於上傳文件,例如寫在function.php文件中,而不是直接修改common.php文件api

直接上代碼,首先是函數部分:函數

參數部分:用戶id,文件,你也能夠設置文件大小和上傳路徑post

function post_upload_one($uid,$file'){

    $file = request()->file($file);
    if (empty($file)) {
        $data['code'] = '2';
        $data['msg'] = '未選擇圖片';
        return $data;
    }
    $size=11548484$path='/uploads/apifile'; $info = $file->move(Env::get('root_path') .'/public'.$path.DIRECTORY_SEPARATOR);
    if($info) {
        // 獲取附件信息
        $file_info = [
            'uid' => $uid,
            'name' => $file->getInfo('name'),
            'mime' => $file->getInfo('type'),
            'path' => str_replace('\\', '/','uploads/apifile' . DIRECTORY_SEPARATOR . str_replace('\\', '/', $info->getSaveName()) ),
            'ext' => $info->getExtension(),
            'size' => $info->getSize(),
            'md5' => $info->hash('md5'),
            'sha1' => $info->hash('sha1'),
            'module' => 'user',

        ];
        if ($file_add = AttachmentModel::create($file_info)) {
            $data['code'] = '0';
            $data['msg'] = $file_add->id;
            return $data;
        }
    }
    $data['code'] = '1';
    $data['msg'] = $file->getError();
    return $data;
}

而後是調用咱們寫好的公共函數ui

 $data['image']=$_FILES;
 $cc = post_upload_one($uid,'image');
相關文章
相關標籤/搜索