How to flip image horizontaly and vertically with php

flip, image, php

Solution

You can also achieve this with the `imagecopy` family of functions if you don't happen to have ImageMagick available. See this example:

function ImageFlip ( $imgsrc, $mode )
{

    $width                        =    imagesx ( $imgsrc );
    $height                       =    imagesy ( $imgsrc );

    $src_x                        =    0;
    $src_y                        =    0;
    $src_width                    =    $width;
    $src_height                   =    $height;

    switch ( $mode )
    {

        case '1': //vertical
            $src_y                =    $height -1;
            $src_height           =    -$height;
        break;

        case '2': //horizontal
            $src_x                =    $width -1;
            $src_width            =    -$width;
        break;

        case '3': //both
            $src_x                =    $width -1;
            $src_y                =    $height -1;
            $src_width            =    -$width;
            $src_height           =    -$height;
        break;

        default:
            return $imgsrc;

    }

    $imgdest                    =    imagecreatetruecolor ( $width, $height );

    if ( imagecopyresampled ( $imgdest, $imgsrc, 0, 0, $src_x, $src_y , $width, $height, $src_width, $src_height ) )
    {
        return $imgdest;
    }

    return $imgsrc;

}

Problem

I search the web for this and i can't find what i need. I have an image (in or outside server) and i need to flip the image horizontaly or vertically with php, and show it like this: ``` <? $img = $_GET['img']; header('Content-type: image/png'); /* do the flip work */ imagepng($img, NULL); imagedestroy($tmp_img); ?> ``` How can i do it? Thank you all.

Original source