php等比缩放输出图片

来源:互联网 发布:apache默认编码方式 编辑:程序博客网 时间:2024/04/28 20:41
/** * 模板图片等比缩放 * $img图片路径 * $width_biao $height_biao传进来的标准宽高 * $type=true 等比内压缩 false 等比外压缩 */function tplImgSize($img, $width_biao = 424, $height_biao = 128, $type = TRUE) {    if (preg_match('/^((http|https|ftp):[\/\\\\]{2})?[a-z0-9]+\.[a-z0-9]+.*$/i', $img, $out1)) {//判断是否为url        $src = $img;    } else if (preg_match('/^[\/\\\\].*$/', $img, $out2)) {//判断是否为根目录        $img = str_replace('\\', '/', $img);        $src = $img;        $img = '.' . $img;    } else {//相对目录        $src = substr($img, 1);    }    $size = getimagesize(urldecode($img));    if ($size !== FALSE) {        $width = $size[0];        $height = $size[1];        $w_bili = $width / $width_biao;        $h_bili = $height / $height_biao;        if (($w_bili >= $h_bili && $type == true) || ($w_bili < $h_bili && $type == false)) {            $w = $width_biao;            $h = floor($height / $w_bili);        } else {            $w = floor($width / $h_bili);            $h = $height_biao;        }    }    return ' src="' . $src . '" width="' . $w . '"  height="' . $h . '" ';}