What are some common pitfalls to avoid when working with image sizes in PHP?

One common pitfall when working with image sizes in PHP is not properly handling image resizing, which can result in distorted or stretched images. To avoid this, it's important to maintain the aspect ratio of the image when resizing. Additionally, not optimizing image file sizes can lead to slow loading times on web pages. To address this, consider compressing images before displaying them on a website.

// Example of resizing an image while maintaining aspect ratio
function resizeImage($sourceImage, $targetWidth, $targetHeight) {
    $sourceDimensions = getimagesize($sourceImage);
    $sourceWidth = $sourceDimensions[0];
    $sourceHeight = $sourceDimensions[1];
    
    $sourceAspectRatio = $sourceWidth / $sourceHeight;
    $targetAspectRatio = $targetWidth / $targetHeight;
    
    if ($sourceAspectRatio > $targetAspectRatio) {
        $newWidth = $targetWidth;
        $newHeight = $targetWidth / $sourceAspectRatio;
    } else {
        $newWidth = $targetHeight * $sourceAspectRatio;
        $newHeight = $targetHeight;
    }
    
    // Resize image using calculated dimensions
    // code for resizing image...
}

// Example of compressing image file size
function compressImage($sourceImage, $quality) {
    $image = imagecreatefromjpeg($sourceImage);
    imagejpeg($image, $sourceImage, $quality);
}