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

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼 原创
2023-02-23 12:02:02 3251浏览

如何用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);
}

以上就是php下载网络图片的方法是什么的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。