Maison développement back-end tutoriel php Comment générer des vignettes après que PHP ait enregistré des images distantes en local ?

Comment générer des vignettes après que PHP ait enregistré des images distantes en local ?

Jul 13, 2023 pm 04:28 PM
保存 远程图片 生成缩略图

Comment générer des vignettes après que PHP ait enregistré les images distantes en local ?

Lors du développement d'un site Web ou d'une application, vous rencontrez souvent des situations dans lesquelles vous devez enregistrer des images distantes sur le serveur local, et également générer des vignettes pour améliorer la vitesse de chargement des pages et économiser de la bande passante. Cet article explique comment utiliser PHP pour enregistrer des images distantes en local et utiliser la bibliothèque GD pour générer des vignettes.

  1. Télécharger des images distantes sur le serveur local

En PHP, vous pouvez utiliser la fonction file_get_contents() pour lire le contenu de l'image distante, puis utiliser la fonction file_put_contents() pour enregistrer le contenu sur le serveur local.

<?php
// 远程图片URL
$remoteImageUrl = "http://example.com/image.jpg";
// 保存到本地的路径
$localImagePath = "/path/to/local/image.jpg";

// 读取远程图片内容
$imageContent = file_get_contents($remoteImageUrl);
// 保存到本地
file_put_contents($localImagePath, $imageContent);
?>
Copier après la connexion

Dans le code ci-dessus, $remoteImageUrl est l'URL de l'image distante et $localImagePath est le chemin enregistré localement. Lisez le contenu de l'image distante via la fonction file_get_contents() et enregistrez le contenu sur le serveur local à l'aide de la fonction file_put_contents().

  1. Générer des vignettes

La manière la plus courante de générer des vignettes en PHP est d'utiliser la bibliothèque GD. La bibliothèque GD est une bibliothèque d'extension PHP permettant de créer et de traiter des images pouvant être utilisées dans la plupart des installations PHP.

Tout d'abord, vous devez utiliser la fonction imagecreatefromXXX() pour créer une ressource image, puis utiliser la fonction imagecopyresampled() pour redimensionner l'image originale à la taille spécifiée, et utiliser la fonction imageXXX() pour enregistrer l'image mise à l'échelle dans le fichier spécifié.

<?php
// 原始图片路径
$originalImagePath = "/path/to/local/image.jpg";
// 缩略图路径
$thumbnailImagePath = "/path/to/local/thumbnail.jpg";
// 缩略图尺寸
$thumbnailSize = 200;

// 创建原始图片资源
$originalImage = imagecreatefromjpeg($originalImagePath);

// 获取原始图片尺寸
$originalWidth = imagesx($originalImage);
$originalHeight = imagesy($originalImage);

// 计算缩放后的尺寸
if ($originalWidth > $originalHeight) {
    $thumbnailWidth = $thumbnailSize;
    $thumbnailHeight = intval($originalHeight / $originalWidth * $thumbnailSize);
} else {
    $thumbnailHeight = $thumbnailSize;
    $thumbnailWidth = intval($originalWidth / $originalHeight * $thumbnailSize);
}

// 创建缩略图资源
$thumbnailImage = imagecreatetruecolor($thumbnailWidth, $thumbnailHeight);

// 缩放原始图片到缩略图
imagecopyresampled($thumbnailImage, $originalImage, 0, 0, 0, 0, $thumbnailWidth, $thumbnailHeight, $originalWidth, $originalHeight);

// 保存缩略图
imagejpeg($thumbnailImage, $thumbnailImagePath);

// 释放资源
imagedestroy($originalImage);
imagedestroy($thumbnailImage);
?>
Copier après la connexion

Dans le code ci-dessus, $originalImagePath est le chemin de l'image originale, $thumbnailImagePath est le chemin de la vignette et $thumbnailSize est la taille de la vignette. Tout d’abord, utilisez la fonction imagecreatefromjpeg() pour créer une ressource image originale. Ensuite, obtenez la taille de l'image originale via les fonctions imagesx() et imagesy() et calculez la taille mise à l'échelle en fonction de la taille de la vignette. Ensuite, utilisez la fonction imagecreatetruecolor() pour créer une ressource miniature, puis utilisez la fonction imagecopyresampled() pour redimensionner l'image originale aux dimensions de la miniature. Enfin, utilisez la fonction imagejpeg() pour enregistrer la vignette dans le chemin de fichier spécifié et utilisez la fonction imagedestroy() pour libérer les ressources.

Grâce aux étapes ci-dessus, nous pouvons télécharger des images distantes au niveau local et générer des vignettes à fournir aux utilisateurs. Dans le développement réel, vous pouvez ajuster le code en fonction de vos propres besoins et ajouter une gestion des erreurs et une vérification de sécurité. J'espère que cet article vous aidera !

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Mar 22, 2024 pm 03:40 PM

Xiaohongshu a un contenu riche que tout le monde peut consulter librement ici, afin que vous puissiez utiliser ce logiciel pour soulager l'ennui tous les jours et vous aider vous-même. En utilisant ce logiciel, vous verrez parfois diverses belles choses. mais les images enregistrées ont des filigranes, ce qui est très important. Tout le monde veut savoir comment enregistrer des images sans filigrane ici. Je vais vous fournir une méthode pour ceux qui en ont besoin. Tout le monde peut la comprendre et l'utiliser immédiatement ! 1. Cliquez sur "..." dans le coin supérieur droit de l'image pour copier le lien 2. Ouvrez l'applet WeChat 3. Recherchez la bibliothèque de patates douces dans l'applet WeChat 4. Entrez dans la bibliothèque de patates douces et confirmez pour obtenir le lien 5. Obtenez la photo et enregistrez-la dans l'album du téléphone portable

Comment télécharger et enregistrer des vidéos Douyin Comment télécharger et enregistrer des vidéos Douyin Mar 29, 2024 pm 02:16 PM

1. Ouvrez l'application Douyin, recherchez la vidéo que vous souhaitez télécharger et enregistrer, puis cliquez sur le bouton [Partager] dans le coin inférieur droit. 2. Dans la fenêtre contextuelle qui apparaît, faites glisser les boutons de fonction de la deuxième rangée vers la droite, recherchez et cliquez sur [Enregistrer localement]. 3. Une nouvelle fenêtre contextuelle apparaîtra à ce moment-là et l'utilisateur pourra voir la progression du téléchargement de la vidéo et attendre la fin du téléchargement. 4. Une fois le téléchargement terminé, le message [Enregistré, veuillez accéder à l'album pour le visualiser] s'affichera, afin que la vidéo qui vient d'être téléchargée soit enregistrée avec succès dans l'album du téléphone mobile de l'utilisateur.

Comment gérer la compression d'image lors de l'enregistrement d'images distantes à l'aide de PHP ? Comment gérer la compression d'image lors de l'enregistrement d'images distantes à l'aide de PHP ? Jul 15, 2023 pm 03:57 PM

Comment gérer la compression d'image lors de l'enregistrement d'images distantes à l'aide de PHP ? Dans le développement réel, nous devons souvent obtenir des images du réseau et les enregistrer sur le serveur local. Cependant, certaines images distantes peuvent être trop volumineuses, ce qui nous oblige à les compresser pour réduire l'espace de stockage et augmenter la vitesse de chargement. PHP fournit des extensions puissantes pour gérer la compression d'images, dont les plus couramment utilisées sont la bibliothèque GD et la bibliothèque Imagick. La bibliothèque GD est une bibliothèque de traitement d'images populaire qui fournit de nombreuses fonctions pour créer, éditer et enregistrer des images. Voici une utilisation

Où sont stockés les fichiers numérisés par l'imprimante HP ? Où sont stockés les fichiers numérisés par l'imprimante HP ? Feb 19, 2024 am 09:18 AM

De nombreux utilisateurs utilisent des imprimantes HP pour numériser des fichiers, mais ils ne savent pas où les fichiers numérisés sont enregistrés. S'ils souhaitent savoir où ils se trouvent, ils peuvent effectuer une recherche comme prévu dans Poste de travail. Où sont enregistrés les fichiers numérisés par les imprimantes HP : 1. Ouvrez d'abord Poste de travail. 2. Saisissez ensuite la date à rechercher. 3. Vous pourrez ensuite trouver les fichiers numérisés. 4. Une fois le pilote d'imprimante installé, il y aura un logiciel auxiliaire de machine multifonction d'imprimante, ouvrez-le. 5. Enfin, cliquez sur l'icône du dossier d'analyse pour rechercher le fichier.

Comment enregistrer les vidéos du compte vidéo dans l'album photo ? Partage de méthodes Comment enregistrer les vidéos du compte vidéo dans l'album photo ? Partage de méthodes Mar 26, 2024 am 11:21 AM

Le compte vidéo est une application vidéo courte populaire qui permet aux utilisateurs de filmer, éditer et partager leurs propres vidéos. Cependant, nous souhaitons parfois sauvegarder ces merveilleuses vidéos dans notre album photo afin de pouvoir les revoir chaque fois que nous en avons besoin. Je vais donc partager quelques méthodes pour vous apprendre à enregistrer la vidéo du numéro de vidéo dans l'album. Les vidéos peuvent être enregistrées via la fonction intégrée de l'application Video Number. Ouvrez l'application et recherchez la vidéo que vous souhaitez enregistrer. Cliquez sur l'icône d'options dans le coin inférieur droit de la vidéo, un menu apparaîtra et sélectionnez "Enregistrer dans l'album". Cela enregistrera la vidéo dans l'album photo de votre téléphone. La deuxième méthode consiste à enregistrer la vidéo en prenant une capture d’écran. Cette méthode est relativement simple, mais l'image enregistrée contiendra des éléments tels que des barres de contrôle vidéo, ce qui n'est pas assez pur. toi

Où enregistrer la capture d'écran Win+Shift+S ? Où enregistrer la capture d'écran Win+Shift+S ? Jan 03, 2024 pm 01:12 PM

De nombreux utilisateurs n'utilisent pas le raccourci de capture d'écran fourni avec Win10. Après avoir pris cette capture d'écran, les utilisateurs ne trouvent pas où le contenu de la capture d'écran correspondant est enregistré. En fait, cette capture d'écran ne sera pas enregistrée à l'avenir, elle se trouve dans votre presse-papiers. , et copiez-le simplement et vous pouvez librement placer la capture d'écran dans n'importe quel dossier. Où les captures d'écran Win10 sont-elles enregistrées avec Win+Shift+S ? Réponse : Dans votre presse-papiers. Vous pouvez placer vos fichiers de capture d'écran dans n'importe quel dossier. Après avoir pris la capture d'écran, vous pouvez coller votre fichier dans le dossier ou cliquer directement sur Enregistrer en tant qu'image, afin que le contenu de la capture d'écran puisse être enregistré. Touche de raccourci de capture d'écran de l'ordinateur Win10 1. "PrtScrSysRq" ou "PrtSc" 2. "Win

Comment enregistrer Win11Excel sur le bureau Comment enregistrer Win11Excel sur le bureau Jan 08, 2024 am 08:33 AM

Si nous voulons enregistrer rapidement le tableau Excel créé sur le bureau, mais que nous ne savons pas comment l'enregistrer sur le bureau dans win11excel, nous pouvons en fait utiliser la fonction Enregistrer sous, et nous pouvons également envoyer directement le raccourci. Comment enregistrer Excel sur le bureau dans win11 : 1. Fichier Excel 1. Tout d'abord, cliquez sur "Fichier" dans le coin supérieur gauche et sélectionnez "Enregistrer sous" 2. Sélectionnez ensuite "Bureau" à gauche 3. Cliquez ensuite sur "Enregistrer" dans le coin inférieur droit pour enregistrer Excel sur le bureau. 2. Logiciel Excel 1. Si vous souhaitez installer le logiciel Excel sur le bureau. 2. Vous pouvez trouver Excel dans le dossier, faites un clic droit et sélectionnez "Afficher plus d'options". 3. Sélectionnez ensuite "Envoyer au raccourci du bureau".

Comment ajouter un filigrane et enregistrer des images distantes après les avoir enregistrées localement en PHP ? Comment ajouter un filigrane et enregistrer des images distantes après les avoir enregistrées localement en PHP ? Jul 11, 2023 pm 11:48 PM

Comment ajouter un filigrane et enregistrer des images distantes après les avoir enregistrées localement en PHP ? Dans le développement PHP, nous rencontrons souvent le besoin de sauvegarder localement des images distantes. Parfois, nous pouvons également avoir besoin d'ajouter un filigrane à l'image enregistrée pour protéger les droits d'auteur ou ajouter des informations supplémentaires. Cet article explique comment utiliser PHP pour enregistrer des images distantes en local et ajouter des filigranes aux images enregistrées. 1. Enregistrez les images distantes en local. Tout d'abord, nous devons utiliser la fonction d'opération de fichier de PHP pour enregistrer les images distantes en local. Voici un exemple de code simple : &

See all articles