| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- <?php
- namespace Modules\Api\Controllers;
- class UploadController extends BaseController
- {
- use \Hyperf\Di\Aop\ProxyTrait;
- use \Hyperf\Di\Aop\PropertyHandlerTrait;
- function __construct()
- {
- if (method_exists(parent::class, '__construct')) {
- parent::__construct(...func_get_args());
- }
- $this->__handlePropertyHandler(__CLASS__);
- }
- public function image()
- {
- $allwImageExts = ['jpg', 'jpeg', 'png', 'gif', 'webp'];
- $allowImageMimes = ['gif' => 'image/gif', 'jpeg' => 'image/jpeg', 'jpg' => 'image/jpg', 'png' => 'image/png', 'webp' => 'image/webp'];
- $maxUploadSize = 5 * ($uploadFileName = 'file');
- if (empty($_FILES[$uploadFileName])) {
- return json_fail('请选择文件');
- }
- $file = $_FILES[$uploadFileName];
- $fileName = $file['name'];
- $fileMime = $file['type'];
- $fileSize = $file['size'];
- // 单位字节,1024字节=1kb
- $fileExt = $this->getFileExtension($fileName);
- if (!in_array($fileExt, $allwImageExts)) {
- return json_fail('文件无效');
- }
- }
- public function getFileExtension($filename)
- {
- $pathinfo = pathinfo($filename);
- return $pathinfo['extension'];
- }
- private function checkIsUploadFile($file)
- {
- return is_uploaded_file($file);
- }
- }
|