建站学 - 轻松建站从此开始!

建站学-个人建站指南,网页制作,网站设计,网站制作教程

当前位置: 建站学 > 网站开发 > PHP教程 >

php下载网络图片的方法是什么

时间:2019-08-28 10:39来源:PHP中文网 作者:猪哥 点击:
使用file_get_contents,curl和fopen这三种方法可以实现PHP下载网络图片,并保存到本地文件中。

如何用php下载网络图片呢?下面给大家介绍几种方法:

相关推荐:《PHP入门教程

1、PHP提供图片下载的方法

download.php 代码

<?php
//获取要下载的文件名
$filename = $_GET['filename'];
//设置头信息
header('Content-Disposition:attachment;filename=' . basename($filename));
header('Content-Length:' . filesize($filename));
//读取文件并写入到输出缓冲
readfile($filename);
Html调用
<a href="download.php?filename=./files/751c77c09d8e530520aab74234495f11.jpg">下载图片</a>

2、PHP下载远程图片的3个方法

本文演示3个从远程URL下载图片,并保存到本地文件中的方法,包括file_get_contents,curl和fopen。

//1. 使用file_get_contents
function dlfile($file_url, $save_to)
{
$content = file_get_contents($file_url);
file_put_contents($save_to, $content);
}
//2.使用CURL
function dlfile($file_url, $save_to)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 0); 
curl_setopt($ch,CURLOPT_URL,$file_url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
$file_content = curl_exec($ch);
curl_close($ch);
$downloaded_file = fopen($save_to, 'w');
fwrite($downloaded_file, $file_content);
fclose($downloaded_file);
}
//3.使用fopen
function dlfile($file_url, $save_to)
{
$in=    fopen($file_url, "rb");
$out=   fopen($save_to, "wb");
while ($chunk = fread($in,8192))
{
fwrite($out, $chunk, 8192);
}
fclose($in);
fclose($out);
}
(责任编辑:admin)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片