= ($bit * $bit * $bit * $bit * $bit)) { //dd(5); $size = $byte / ($bit * $bit * $bit * $bit * $bit); $res = $iso ? 'TiB' : 'TB'; } else if ($byte >= ($bit * $bit * $bit * $bit)) { //dd(4); $size = $byte / ($bit * $bit * $bit * $bit); $res = $iso ? 'TiB' : 'TB'; } else if ($byte >= ($bit * $bit * $bit)) { //dd(3); $size = $byte / ($bit * $bit * $bit); $res = $iso ? 'GiB' : 'GB'; } else if ($byte >= ($bit * $bit)) { //dd(2); $size = $byte / ($bit * $bit); $res = $iso ? 'MiB' : 'MB'; } else if ($byte >= $bit) { //dd(1); $size = $byte / $bit; $res = $iso ? 'KiB' : 'kB'; } //dd($size); return number_format($size, 2).' '.$res; } function getmimetype (string $fname): string|null { $i = 0; foreach ($_FILES as $v) { if ($fname == $v['name'][$i]) { return $v['type'][$i]; } $i++; } return null; } function verifyupload (): array { $res = []; $i = 0; foreach ($_FILES as $file) { if ($file['error'][$i] != 0) { $err = ''; switch ($file['error'][$i]) { case 1: $err = 'php.iniでの「upload_max_filesize」値が超えています。ファイルサイズ:'.humanreadablesize($file['size'][$i]); break; case 2: $err = 'HTMLフォームの「MAX_FILE_SIZE」値が超えています。ファイルサイズ:'.humanreadablesize($file['size'][$i]); break; case 3: $err = 'ファイルの部分の失敗です。'; break; case 4: $err = 'ファイルをアップロード出来ません。'; break; case 5: $err = '不明'; break; case 6: $err = '仮フォルダがありません。'; break; case 7: $err = 'uploadフォルダに書き込めません。'; break; case 8: $err = '拡張子がありません。'; break; } $res[$file['name'][$i]] = $err; } $i++; } return $res; } function loliupload (array $files): bool { $dir = __DIR__.'/../public/static/upload/'; $fname = ''; if (!file_exists($dir)) { mkdir($dir, 0777); } do { $fname = uuid().'.'.fileextension($files['name'][0]); } while (file_exists($dir.$fname)); if (move_uploaded_file($files['tmp_name'][0], $dir.$fname)) { return true; } return false; } ?>