Maison >développement back-end >tutoriel php >Comment collecter des images distantes en local en utilisant PHP

Comment collecter des images distantes en local en utilisant PHP

PHPz
PHPzoriginal
2017-04-03 16:30:292372parcourir

J'ai écrit cette fonction aujourd'hui et je l'ai partagée avec mes amis. Elle peut obtenir des images distantes et les enregistrer localement. En fait, vous pouvez vous référer au fait que de nombreux systèmes de gestion PHP ont cette fonction.

La première étape consiste à extraire tous les a2e895f50458a10b2f286564b51b8302 de l'article à l'aide d'expressions régulières

Le code est le suivant :

$message //文章内容 
//正则(这个还不是) 
$reg = "/<img[^>]*src=\"(http:\/\/(.+)\/(.+)\.(jpg|gif|bmp|bnp))\"/isU"; 
//把抠出来的 img 地址存放到 $img_array 变量中 
preg_match_all($reg, $message, $img_array, PREG_PATTERN_ORDER); 
//过滤重复的图片 
$img_array = array_unique($img_array[1]);
<.> Étape 2. Bouclez le tableau $img_array Enregistrez l'image et remplacez la position de l'article


Le code est le suivant :

foreach ($img_array as $img){ 
//判断是否是自己网站上的 图片 
if(&#39;xxx.com&#39; != get_domain($img)){// 如果这个图片不是自己服务器上的 
//读取图片文件 
$Gimg = new GetImage(); 
$Gimg->source = $img; 
$Gimg->save_to = &#39;./data/temp/&#39;; 
$FILE = $Gimg->download(); //图片移动到本地 
//保存到相册 得到图片保存的位置 
$img_path = pic_save($FILE,0,&#39;&#39;); 
//文本路径替换 
$message = str_replace($img, $img_path, $message); 
} 
}
....À cette fois, il y a déjà une image dans $message. Elle a été remplacée par l'adresse locale de votre propre serveur, et l'image est également enregistrée sur votre propre serveur


Le code est le suivant :

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