Maison >développement back-end >tutoriel php >Comment obtenir la largeur et la hauteur de l'image après que PHP ait enregistré l'image distante en local ?

Comment obtenir la largeur et la hauteur de l'image après que PHP ait enregistré l'image distante en local ?

WBOY
WBOYoriginal
2023-07-14 15:43:401645parcourir

Comment obtenir la largeur et la hauteur d'une image distante après l'avoir enregistrée localement en PHP ?

Présentation : 
Lors du développement d'applications Web, nous avons souvent besoin d'obtenir des images de serveurs distants et de les enregistrer sur le serveur local. Après avoir enregistré les images localement, nous devrons peut-être en outre obtenir la largeur et la hauteur de ces images afin d'afficher et de disposer correctement ces images sur la page. Cet article explique comment utiliser PHP pour enregistrer des images distantes en local et obtenir la largeur et la hauteur de l'image.

Exemple de code :

<?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 :
Le code ci-dessus fournit deux fonctions pour enregistrer l'image distante et obtenir la largeur et la hauteur de l'image.

Tout d'abord, la fonction saveRemoteImage accepte deux paramètres : l'URL de l'image distante et le chemin de sauvegarde local. Cette fonction utilise la fonction file_get_contents pour obtenir le contenu de l'image distante et la fonction file_put_contents pour enregistrer le contenu dans le chemin local. De cette manière, la fonction de sauvegarde d'images distantes sur le serveur local peut être réalisée. saveRemoteImage函数接受两个参数:远程图片URL和本地保存路径。该函数使用file_get_contents函数获取远程图片的内容,并使用file_put_contents函数将内容保存到本地路径。这样就能实现将远程图片保存到本地服务器的功能。

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

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

Deuxièmement, la fonction getImageSize accepte le chemin de l'image locale comme paramètre et utilise la fonction getimagesize pour obtenir les informations de largeur et de hauteur de l'image. La fonction getimagesize renvoie un tableau contenant la largeur, la hauteur et d'autres informations associées à l'image. Dans notre exemple, nous ne nous soucions que de la largeur et de la hauteur, nous obtenons donc ces deux valeurs par indexation de tableau.


Enfin, nous appelons la fonction saveRemoteImage pour enregistrer l'image distante localement, et utilisons la fonction getImageSize pour obtenir la largeur et la hauteur de l'image enregistrée. Enfin, nous affichons ces deux valeurs afin qu'elles puissent être affichées sur la page.

🎜Résumé : 🎜Grâce à l'exemple de code ci-dessus, nous pouvons facilement utiliser PHP pour enregistrer des images distantes en local et obtenir la largeur et la hauteur des images enregistrées. Ceci est très utile pour traiter les images lors du développement d’applications Web. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn