Yii2图片上传验证,无model。

17-07-05 11:30 字数 489 阅读 3574 已编辑
$file = UploadedFile::getInstanceByName('editormd-image-file');
if($file->hasError){
        $res['message'] = $file->error;
        return $res;
}
if(!$file->size){
        $res['message'] = '文件内容是空的';
        return $res;
}
$allowTypes = ['image/jpeg', 'image/png', 'image/gif', 'image/bmp'];
if(!in_array($file->type, $allowTypes)){
        $res['message'] = '图片格式不正确';
        return $res;
}
// 验证文件格式
if (!in_array($file->extension, ['jpg', 'gif', 'png', 'jpeg', 'bmp'])){
        $res['message'] = '图片格式不正确';
        return $res;
}
// 验证文件大小
if ($file->size >= 1024*1024*3){
        $res['message'] = '图片大小超限[<=3mb]';
        return $res;
}
if ($file) {
        $randomNumber = microtime() . mt_rand(111111, 999999);
        $filename = md5($randomNumber) . '.' . $file->extension;
        $randomFolder = date('Ymd');
        $savePath = '/uploads_nj/' . $randomFolder . '/' . $filename;
        $trueSavePath = Yii::getAlias('@app/web').$savePath;
        if (!yiihelpersFileHelper::createDirectory(dirname($trueSavePath))){
                $res['message'] = '目录权限错误';
                return $res;
        }
        if($file->saveAs($trueSavePath)){
                $res['success'] = 1;
                $res['url'] = $this->getHost().$savePath;
        }else{
                $res['message'] = $file->error;
                return $res;
        }
}
0人点赞>
关注 收藏 改进 举报
0 条评论
排序方式 时间 投票
快来抢占一楼吧
请登录后发表评论
文章
1
粉丝
0
喜欢
0
收藏
0
排名 : 40
访问 : 3573
私信
文章归档
最新文章
最受欢迎