使用所有类型调整PHP图像大小

使用所有类型调整PHP图像大小,php,image,upload,resize,Php,Image,Upload,Resize,我遵循了一个关于如何使用PHP调整图像大小的教程,认为这比自己花几个小时来尝试更容易,但我在上传除.jpg文件以外的任何文件时遇到了一个问题,这是可以理解的,因为我使用了“imagecreatefromjpeg”和“imagejpeg”,但是对于所有图像类型,我还可以使用什么其他函数呢 这是我的密码: <?php $outputDir = "../images/uploads/"; $randomInt = rand(1,1000); $imgTmpname = $_FILES["myf

我遵循了一个关于如何使用PHP调整图像大小的教程,认为这比自己花几个小时来尝试更容易,但我在上传除.jpg文件以外的任何文件时遇到了一个问题,这是可以理解的,因为我使用了“imagecreatefromjpeg”和“imagejpeg”,但是对于所有图像类型,我还可以使用什么其他函数呢

这是我的密码:

<?php

$outputDir = "../images/uploads/";
$randomInt = rand(1,1000);
$imgTmpname = $_FILES["myfile"]["tmp_name"];
$newImgName = $randomInt;
$imgSavedName = $randomInt . '.jpg';

move_uploaded_file($imgTmpname,$outputDir.$imgSavedName);

echo $newImgName;

$savedImgDir = $outputDir . $imgSavedName;

$imgSize = getimagesize($savedImgDir);
$imgWidth = $imgSize[0];
$imgHeight = $imgSize[1];

$newSize = ($imgWidth + $imgHeight) / ($imgWidth * ($imgHeight / 45));
$newWidth = $imgWidth * $newSize;
$newHeight = $imgHeight * $newSize;

$newImg = imagecreatetruecolor($newWidth, $newHeight);
$oldImg = imagecreatefromjpeg($savedImgDir);

imagecopyresized($newImg, $oldImg, 0, 0, 0, 0, $newWidth, $newHeight, $imgWidth, $imgHeight);
imagejpeg($newImg, $outputDir.$newImgName.'_thumb'.'.jpg');

?>

请参见以下操作图像的各种功能:

您有可用的:

imagecreatefromgd2 - Create a new image from GD2 file or URL
imagecreatefromgd2part - Create a new image from a given part of GD2 file or URL
imagecreatefromgd - Create a new image from GD file or URL
imagecreatefromgif - Create a new image from file or URL
imagecreatefromjpeg - Create a new image from file or URL
imagecreatefrompng - Create a new image from file or URL
imagecreatefromstring - Create a new image from the image stream in the string
imagecreatefromwbmp - Create a new image from file or URL
imagecreatefromwebp - Create a new image from file or URL
imagecreatefromxbm - Create a new image from file or URL
imagecreatefromxpm - Create a new image from file or URL
然后你可以根据自己的喜好选择合适的