Maison  >  Article  >  développement back-end  >  Présentation de trois méthodes pour obtenir des images externes en PHP

Présentation de trois méthodes pour obtenir des images externes en PHP

PHPz
PHPzoriginal
2023-03-31 09:09:541413parcourir

Dans le développement de sites Web, il est souvent nécessaire d'obtenir des images externes à afficher sur votre site Web. Lors du développement avec PHP, comment obtenir des images externes est une question courante. Cet article présentera plusieurs méthodes pour obtenir des images externes, j'espère qu'il sera utile à tout le monde.

Méthode 1 : file_get_contents

La fonction file_get_contents est une fonction intégrée à PHP qui peut être utilisée pour lire le contenu d'un fichier. Son premier paramètre est le chemin du fichier à obtenir, et le deuxième paramètre est un paramètre booléen indiquant s'il faut lire l'intégralité du contenu du fichier dans une chaîne. Le même principe s'applique à la lecture des images. Il vous suffit de définir le chemin du fichier sur l'adresse URL de l'image. L'exemple de code est le suivant :

$url = 'http://example.com/image.jpg'; // 图片 URL 地址
$img = file_get_contents($url);       // 读取图片
file_put_contents('image.jpg', $img); // 将图片保存到本地文件

Cette méthode est simple et facile à comprendre, avec moins de code, mais les performances ne sont pas assez efficaces.

Méthode 2 : curl

curl est une bibliothèque de requêtes réseau couramment utilisée qui peut être utilisée pour obtenir le contenu d'une page Web. Peut également être utilisé pour prendre des photos. L'exemple de code est le suivant :

$url = 'http://example.com/image.jpg'; // 图片 URL 地址
$ch = curl_init();                     // 创建 curl 句柄
curl_setopt($ch, CURLOPT_URL, $url);   // 设置 curl 请求的 URL
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);  // 不将 curl 结果直接输出到浏览器
$img = curl_exec($ch);                 // 获取图片内容
curl_close($ch);                       // 关闭 curl 句柄
file_put_contents('image.jpg', $img);  // 将图片保存到本地文件

Cette méthode a des performances supérieures à file_get_contents, mais la quantité de code est relativement importante.

Méthode 3 : Outils de téléchargement à distance

Vous pouvez également utiliser certains outils de téléchargement à distance, tels que wget ou aria2, etc. Ces outils peuvent télécharger des images spécifiées via la ligne de commande et les enregistrer dans des fichiers locaux. Par exemple, utilisez la commande wget pour télécharger une image :

wget http://example.com/image.jpg -O image.jpg

Cette méthode nécessite l'installation de l'outil de téléchargement correspondant, ce qui peut ne pas être convivial pour les développeurs PHP.

Résumé

Obtenir des images externes est un problème courant lors du développement avec PHP, vous pouvez choisir file_get_contents, curl ou certains outils de téléchargement à distance pour y parvenir. Choisissez simplement une méthode basée sur les besoins réels.

Il convient de noter que lors de l'obtention d'images externes, vous devez faire attention aux problèmes de droits d'auteur et ne pas les télécharger et les utiliser illégalement. Parallèlement, pour les applications qui obtiennent fréquemment des images externes, un mécanisme de mise en cache doit être ajouté pour éviter une consommation excessive des ressources du réseau et du serveur.

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