Heim  >  Artikel  >  Backend-Entwicklung  >  Wie erhalte ich die Breite und Höhe des Bildes, nachdem PHP das Remote-Bild lokal gespeichert hat?

Wie erhalte ich die Breite und Höhe des Bildes, nachdem PHP das Remote-Bild lokal gespeichert hat?

WBOY
WBOYOriginal
2023-07-14 15:43:401583Durchsuche

Wie erhalte ich die Breite und Höhe eines Remote-Bildes, nachdem ich es lokal in PHP gespeichert habe?

Übersicht:
Bei der Entwicklung von Webanwendungen müssen wir häufig Bilder von Remote-Servern abrufen und auf dem lokalen Server speichern. Nachdem wir die Bilder lokal gespeichert haben, müssen wir möglicherweise außerdem die Breite und Höhe dieser Bilder ermitteln, um diese Bilder auf der Seite korrekt anzuzeigen und anzuordnen. In diesem Artikel wird erläutert, wie Sie mit PHP Remote-Bilder lokal speichern und die Breite und Höhe des Bildes ermitteln.

Codebeispiel:

<?php
// 保存远程图片到本地
function saveRemoteImage($remoteImageUrl, $localImagePath) {
    $remoteImageContent = file_get_contents($remoteImageUrl);
    file_put_contents($localImagePath, $remoteImageContent);
}

// 获取图片的宽度和高度
function getImageSize($localImagePath) {
    $imageSize = getimagesize($localImagePath);
    $width = $imageSize[0];
    $height = $imageSize[1];
    
    return ['width' => $width, 'height' => $height];
}

// 远程图片URL和本地保存路径
$remoteImageUrl = 'https://example.com/image.jpg';
$localImagePath = './images/image.jpg';

// 保存远程图片到本地
saveRemoteImage($remoteImageUrl, $localImagePath);

// 获取图片的宽度和高度
$imageSize = getImageSize($localImagePath);

// 输出图片的宽度和高度
echo '图片宽度:' . $imageSize['width'] . '<br>';
echo '图片高度:' . $imageSize['height'] . '<br>';
?>

Analyse:
Der obige Code bietet zwei Funktionen zum Speichern des Remote-Bildes und zum Abrufen der Bildbreite und -höhe.

Zunächst akzeptiert die Funktion saveRemoteImage zwei Parameter: die Remote-Bild-URL und den lokalen Speicherpfad. Diese Funktion verwendet die Funktion file_get_contents, um den Inhalt des Remote-Images abzurufen, und die Funktion file_put_contents, um den Inhalt im lokalen Pfad zu speichern. Auf diese Weise kann die Funktion zum Speichern von Remote-Bildern auf dem lokalen Server realisiert werden. saveRemoteImage函数接受两个参数:远程图片URL和本地保存路径。该函数使用file_get_contents函数获取远程图片的内容,并使用file_put_contents函数将内容保存到本地路径。这样就能实现将远程图片保存到本地服务器的功能。

其次,getImageSize函数接受本地图片路径作为参数,使用getimagesize函数获取图片的宽度和高度信息。getimagesize函数返回一个数组,包含了图片的宽度、高度以及其他相关的图片信息。在我们的示例中,我们只关心宽度和高度,因此我们通过数组索引来获取这两个值。

最后,我们调用saveRemoteImage函数将远程图片保存到本地,并使用getImageSize

Zweitens akzeptiert die Funktion getImageSize den lokalen Bildpfad als Parameter und verwendet die Funktion getimagesize, um die Breiten- und Höheninformationen des Bildes abzurufen. Die Funktion getimagesize gibt ein Array zurück, das die Breite, Höhe und andere zugehörige Bildinformationen des Bildes enthält. In unserem Beispiel kümmern wir uns nur um Breite und Höhe, daher erhalten wir diese beiden Werte durch Array-Indizierung.


Abschließend rufen wir die Funktion saveRemoteImage auf, um das Remote-Bild lokal zu speichern, und verwenden die Funktion getImageSize, um die Breite und Höhe des gespeicherten Bildes zu ermitteln. Abschließend geben wir diese beiden Werte aus, damit sie auf der Seite angezeigt werden können.

🎜Zusammenfassung: 🎜Durch den obigen Beispielcode können wir PHP problemlos verwenden, um Remote-Bilder lokal zu speichern und die Breite und Höhe der gespeicherten Bilder zu ermitteln. Dies ist sehr nützlich für die Bildverarbeitung bei der Entwicklung von Webanwendungen. 🎜

Das obige ist der detaillierte Inhalt vonWie erhalte ich die Breite und Höhe des Bildes, nachdem PHP das Remote-Bild lokal gespeichert hat?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn