php图像旋转,图片旋转(逆时针90或者顺时针90)

  //src 图片完整路径
    //$direction 1顺时针90   2 逆时针90
    function imgturn($src,$direction=1)
    {
        $ext = pathinfo($src)[‘extension‘];
        switch ($ext) {
            case ‘gif‘:
                $img = imagecreatefromgif($src);
                break;
            case ‘jpg‘:
            case ‘jpeg‘:
                $img = imagecreatefromjpeg($src);
                break;
            case ‘png‘:
                $img = imagecreatefrompng($src);
                break;
            default:
                die(‘图片格式错误!‘);
                break;
        }
        $width = imagesx($img);
        $height = imagesy($img);
        $img2 = imagecreatetruecolor($height,$width);
        //顺时针旋转90度
        if($direction==1)
        {
            for ($x = 0; $x < $width; $x++) {
                for($y=0;$y<$height;$y++) {
                    imagecopy($img2, $img, $height-1-$y,$x, $x, $y, 1, 1);
                }
            }
        }else if($direction==2) {
            //逆时针旋转90度
            for ($x = 0; $x < $height; $x++) {
                for($y=0;$y<$width;$y++) {
                    imagecopy($img2, $img, $x, $y, $width-1-$y, $x, 1, 1);
                }
            }
        }
        switch ($ext) {
            case ‘jpg‘:
            case "jpeg":
                imagejpeg($img2, $src, 100);
                break;
      
            case "gif":
                imagegif($img2, $src, 100);
                break;
                
            case "png":
                imagepng($img2, $src, 100);
                break;
                
            default:
                die(‘图片格式错误!‘);
                break;
        }
        imagedestroy($img);
        imagedestroy($img2);
    }

测试代码

<?php
//测试代码
//顺时针旋转90度
imgturn(‘/usr/abc.jpg‘,1);
?> 

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。