<< функция для фильтра данных PHP С чего начинается сайт >>

Функция для изменения размера картинки php

public function img_resize($src, $dest, $width, $height, $tolarge, $bgcolor, $ext = 'png') {
        if (!file_exists($src))
            return false;
        $icfunc = "imagecreatefrom" . $ext;
        if (!function_exists($icfunc))
            return false;
        list($imgwidth, $imgheight) = getimagesize($src);
        if ($tolarge != '1' && $imgwidth < $width)
            $width = $imgwidth;
        if ($imgwidth > $width || $imgheight > $height) {
            $x_ratio     = $width / $imgwidth;
            $y_ratio     = $height / $imgheight;
            $ratio       = min($x_ratio, $y_ratio);
            $use_x_ratio = ($x_ratio == $ratio);
            $new_width   = $use_x_ratio ? $width : floor($imgwidth * $ratio);
            $new_height  = !$use_x_ratio ? $height : floor($imgheight * $ratio);
        } else {
            $new_width  = $imgwidth;
            $new_height = $imgheight;
        }
        $isrc = $icfunc($src);
        if ($bgcolor != 0)
            $bgc = $bgcolor;
        else
            $bgc = 0xFFFFFF;
        $new_left = ($width - $new_width) / 2;
        $new_top  = ($height - $new_height) / 2;
        $idest    = imagecreatetruecolor($width, $height);
        imagefill($idest, 0, 0, $bgc);
        imagecopyresampled($idest, $isrc, $new_left, $new_top, 0, 0, $new_width, $new_height, $imgwidth, $imgheight);
        if ($ext == "gif")
            imagegif($idest, $dest);
        elseif ($ext == "png")
            imagepng($idest, $dest);
        else
            imagejpeg($idest, $dest, 90);
        imagedestroy($isrc);
        imagedestroy($idest);
        return true;
    }



22.07.2019 68 Gor Abrahamyan -> web developer : views