PHP教程

PHP下载远程图片到本地

本文主要是介绍PHP下载远程图片到本地,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

这里写法只提供一种思路,具体还要看自己的需求!!!


<?php
//本地图片格式
/**
* 格式 - 都是这样的格式
* img_url - 远程图片地址数据
*	{"img_url":"user/2109/10183/1350189/sf_1902529_3.jpg","phone":"18******09"} 
*	{"img_url":"user/2109/10183/1350189/sf_1902529_3.jpg","phone":"18******09"} 
*	{"img_url":"user/2109/10183/1350189/sf_1902529_3.jpg","phone":"18******09"} 
*	{"img_url":"user/2109/10183/1350189/sf_1902529_3.jpg","phone":"18******09"} 
*	······
**/
$file = "D://care_list.txt";

//本地图片保存地址
$input_dir = 'D://images';

//把文件内容读取到数组
$arr = file($file);
$i = 1;

//远程地址
$image_base_url = 'https://*****.com.cn/';

//循环处理
foreach($arr as $item){
    if ($item) {
        $imgs = json_decode($item,true);
        echo "第". $i .' 条,手机号为:'.$imgs['phone']."开始下载...\n";
        $url = $image_base_url . $imgs['img_url'];
        $img = $input_dir.'/'.$imgs['phone'].'.jpg';
        //检测是否已经有此图片
        if (is_file($img)) {
            echo "已有此手机号:". $imgs['phone'] ."对应的图片,不能重复下载!\n";
        }else{
            //创建文件 - 把文件保存并按手机号命名
            $imgData = file_get_contents($url);
            file_put_contents($img, $imgData);
            echo "第". $i ." 条下载结束\n";
        }
        $i++;
    }
}

?>
这篇关于PHP下载远程图片到本地的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!