php curl 文件下载函数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
function curlDownFile($img_url, $save_path = '', $filename = '') {
    if (trim($img_url) == '') {
        return false;
    }
    if (trim($save_path) == '') {
        $save_path = './';
    }
 
    //创建保存目录
    if (!file_exists($save_path) && !mkdir($save_path, 0777, true)) {
        return false;
    }
    if (trim($filename) == '') {
        $img_ext = strrchr($img_url, '.');
        $img_exts = array('.gif', '.jpg', '.png', '.mp4');
        if (!in_array($img_ext, $img_exts)) {
            return false;
        }
        $filename = time() . $img_ext;
    }
 
    // curl下载文件
    $ch = curl_init();
    $timeout = 5;
    curl_setopt($ch, CURLOPT_URL, $img_url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    $img = curl_exec($ch);
    curl_close($ch);
 
    // 保存文件到制定路径
    file_put_contents($filename, $img);
 
    unset($img, $url);
    return true;
}
//curlDownFile('http://mimg.127.net/logo/163logo.gif');
curlDownFile('http://ww1.rs.fanjian.net/iv/76/15/9b/e376ab3f5e1593342f9b53ba017c8bce.mp4');
die;

  

posted @   猖狂的小山猪  阅读(2984)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2017-08-03 laravel 引入自定义文件,functions.php
2017-08-03 laravel 引入第三方类
点击右上角即可分享
微信分享提示