Bài viết này hướng dẫn các bạn cách tải hình ảnh từ URL về máy chủ trong PHP sử dụng cURL.

Lưu hình ảnh từ URL về máy chủ với PHP cURL

Để thực hành bài viết này, các bạn cần:

Để tải ảnh, các bạn sử dụng function.

function grab_image($url, $saveto) {
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);
    $raw = curl_exec($ch);
    curl_close($ch);
    
    if (file_exists($saveto)) {
        unlink($saveto);
    }

    $fp = fopen($saveto, 'x');
    fwrite($fp, $raw);
    fclose($fp);
}

Để sử dụng, các bạn truyền đường dẫn và thư mục cần lưu.

grab_image('https://www.inithtml.com/wp-content/uploads/2017/04/cloud-300x150.jpg', 'đường_dẫn/tên_tập_tin.jpg');

Lưu ý: Thư mục của đường dẫn cần được tạo sẵn, có thể đổi tên tập tin theo nhu cầu.

Chúc các bạn thành công!