当前位置: 代码迷 >> 综合 >> thinkphp6 上传图片
  详细解决方案

thinkphp6 上传图片

热度:58   发布时间:2023-11-18 11:31:17.0
/*** 上传文件* @param string $filename input框的name* @param string $filepath 存储路径* @param string $rule 验证规则* @param int $maxsize 允许文件上传的大小 默认为2m* @param bool $fileas 是否用原文件名上传保存 默认false* @return array*/function upload($filename='file',$filepath='images',$rule='fileExt:jpg,jpeg,png,gif,mp3,pem|fileMime:image/jpeg,image/gif,image/png,text/plain',$maxsize=2097152,$fileas=false){
    $file = request()->file($filename);$filetype = file_format($file);try {
    validate([$filename => $rule])->check([$filename => $file]);$savename = $fileas == false ? \think\facade\Filesystem::disk('public')->putFile( $filepath, $file) : \think\facade\Filesystem::disk('public')->putFileAs( $filepath.'/'.date('Ymd'), $file,$file->getOriginalName());return array('code' => 0, 'filename' => $savename, 'filetype' => $filetype);} catch (ValidateException $e) {
    return json(['code' => '-1', 'msg' => $e->getMessage()]);}}