上传图片旋转问题
2017-05-02
手机上查看图片的时候,会出现图片倒过来的情况,对用户体验超级不好。所以我们需要根据图片的需要,对图片进行旋转的操作。以下代码,是个小demo,在使用的时候,要确定php环境是否开启exif扩展,以下代码需要依赖exif扩展。
/**
* @todo 图片旋转
* @author yezi
*/
function isExifImg($lacalFile,$targetFile)
{
$exif = (exif_read_data($lacalFile));//获取文件的exif信息
$orientation = array(8=>90,3=>180,6=>-90);
if(isset($exif['Orientation'])){
if(in_array($exif['Orientation'],array_keys($orientation))){
if($exif['Orientation']==6 || $exif['Orientation']==8){
$this->imgWidth = 640;
$this->imgHeight = 480;
}
$image = imagecreatefromstring(file_get_contents($lacalFile));
$temp = imagerotate($image,$orientation[$exif['Orientation']],0);
imagejpeg($temp,$targetFile);
unlink($lacalFile);
}else{
$targetFile = $lacalFile;//不用翻转
}
}else{
$targetFile = $lacalFile;//不用翻转
}
return $targetFile;
}