图片上传封装

<?php

/**
* 上传图片
*
*/

class ImageFile
{
public static function uploadImageFile($savePath, $key = 'files', $allowExt = [], $maxSizeM = 10)
{
$return = ['ret' => 0, 'msg' => 'success'];
try {
if (!$savePath) {
$return['ret'] = 1;
$return['msg'] = 'The file save path is empty';
return $return;
}
if (empty($_FILES[$key]['name'])) {
$return['ret'] = 1;
$return['msg'] = 'file not exist';
return $return;
}
$fileErrors = $_FILES[$key]['error'];
foreach ((array)$fileErrors as $fileError) {
if ($fileError != 0) {
$return['ret'] = 1;
$return['msg'] = 'file upload error';
return $return;
}
}
$fileSize = $_FILES[$key]['size'];
if ($fileSize / 1024 / 1024 > $maxSizeM) {
$return['ret'] = 1;
$return['msg'] = 'file size too large';
}

$fileName = $_FILES[$key]['name'];
$filePath = $_FILES[$key]['tmp_name'];
$fileExt = pathinfo($fileName)['extension'];
if (!in_array($fileExt, $allowExt)) {
throw new Exception('File format only supports: ' . implode('、', $allowExt));
}
$fileName = pathinfo($fileName)['filename'];
$object = __PUBLIC__ . $savePath . '/' . $fileName . '.' . $fileExt;
//自己处理业务逻辑
;
$return['data'] = ["imageUrl"=>$data];
return $return;
} catch (\Exception $e) {
$return['ret'] = 1;
$return['msg'] = $e->getMessage();
return $return;
}
}
}

调用

    /**
* 图片上传
*/
public function uploadImage()
{
$savePath = "/dev/data/dahai/hpay_image";
$res = ImageFile::uploadImageFile($savePath,'file',['png'], 2);
return $this->returnJson($res);
}

直接上传图片资源就行了