Aktueller Standort: Startseite> Neueste Artikel> Detaillierte Erläuterung, wie Sie entfernte Bilder und Grenzgrößen von PHP speichern können

Detaillierte Erläuterung, wie Sie entfernte Bilder und Grenzgrößen von PHP speichern können

M66 2025-06-25

Wie begrenzen Sie die gespeicherte Bildgröße beim Speichern von Remote -Bildern in PHP?

Mit der schnellen Entwicklung des Internets ist es zu einem gemeinsamen Bedürfnis geworden, Bilder im Internet zu erhalten und zu speichern. Um Speicherplatz zu sparen und die Ladegeschwindigkeit der Website zu verbessern, ist es besonders wichtig, die Größe gespeicherter Bilder zu begrenzen. In diesem Artikel wird vorgestellt, wie PHP verwendet wird, um Größeneinschränkungen beim Speichern von Remote -Bildern zu erreichen.

Verwenden Sie die GD -Bibliothek, um eine Remote -Bildgröße zu erhalten

Die GD -Bibliothek von PHP ist ein leistungsstarkes Bildverarbeitungswerkzeug, das die Änderung der Bildgröße und Komprimierungsvorgänge unterstützt. Zunächst müssen wir die Breite und Höheninformationen des Fernbildbildes über die integrierte PHP-integrierte Funktion getImageSize erhalten. Der Beispielcode lautet wie folgt:

$ remoteimageurl = 'http://example.com/remote-image.jpg';
$ imageInfo = getImageSize ($ remoteimageurl);

if (! $ imageInfo) {
    Echo 'versäumte es, Remote -Bilder zu bekommen! ';
    zurückkehren;
}

$ remoteimageWidth = $ imageInfo [0];
$ remoteimageHeight = $ imageInfo [1];

Durch den obigen Code können Sie die Breite und Höhe des Fernbildes erfolgreich erhalten.

Definieren Sie die maximale Größe und machen Sie Größengrenzen

Stellen Sie als Nächstes eine maximale Breite und eine maximale Höhe ein, um die Bildgröße entsprechend den tatsächlichen Bedürfnissen zu begrenzen. Wenn die Remote -Bildgröße den Maximalwert festlegt, skalieren Sie ihn auf Skalierung und speichern Sie ihn direkt. Der Beispielcode lautet wie folgt:

$ maxwidth = 800;
$ maxHeight = 600;

if ($ remoteImagewidth> $ maxwidth || $ remoteImageHeight> $ maxheight) {
    // Berechnen Sie die Skalierungsskala $ scale = min ($ maxwidth / $ remoteImagewidth, $ maxheight / $ remoteiMageHeight);

    // Berechnen Sie die skalierte Größe $ newwidth = $ remoteiMageWidth * $ scale;
    $ newHeight = $ remoteiMageHeight * $ scale;

    // Erstellen Sie ein neues leeres Bild $ newImage = imageCreatetRueColor ($ newwidth, $ newHeight);

    // Das Remote -Bild in das neue Bild- und Maßstab imageCopyresampled ($ newImage, ImagecreateFromjpeg ($ remoteiMageurl), 0, 0, 0, 0, $ newwidth, $ newHeight, $ remoteimagewidth, $ remoteimerheight);

    // Neues Bild vor dem lokalen Server imagejpeg speichern ($ newImage, 'path/to/save/new-image.jpg');

    // Free Memory ImagedStroy ($ NewImage);
} anders {
    // Es ist keine Skalierung erforderlich, speichern Sie die Remote-Image-Kopie ($ remoteImageurl, 'Pfad/to/save/remote-image.jpg');
}

Zusammenfassen

Mit der obigen Methode können Sie problemlos PHP verwenden, um Remote -Bilder zu sparen und ihre Größe effektiv einzuschränken. Diese Methode stellt sicher, dass die gespeicherten Bilder von angemessener Größe sind, was nicht nur den Serverspeicher spart, sondern auch die Ladeeffizienz der Website verbessert. Der Gesamtprozess umfasst: das Erhalten der Remote -Bildgröße, das Festlegen der maximalen Größe, das Bestimmen, ob die Skalierung erforderlich ist und schließlich speichern.