ios端浏览器拍照上传到服务器,图片被旋转90度 php 解决方案

大憨熊 提交于 2019-12-04 14:01:16

1、可以通过前端进行解决,本案例通过后端解决的

判断请求的浏览器的ua,如果是ios浏览器则进行90度旋转

 public function upload()
    {
        $file = $this->request->file('file');
        if (empty($file)) {
            $this->error(__('No file upload or server upload limit exceeded'));
        }
        //判断浏览器类型
        if(strpos($_SERVER['HTTP_USER_AGENT'], 'iPhone')||strpos($_SERVER['HTTP_USER_AGENT'], 'iPad')){
		    try{
				$exif = @exif_read_data($_FILES['file']['tmp_name']);
				$image = imagecreatefromstring(file_get_contents($_FILES['file']['tmp_name']));
				//旋转90度
				$image = imagerotate($image, -90, 0);
			    imagejpeg($image, $_FILES['file']['tmp_name']);
			    imagedestroy($image);
			}catch(\Exception $e){
				//echo $e->getMessage();
			}
		}

  

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!