Auto download image from URL use PHP

Sau đây mình sẽ hướng dẫn các bạn cách tự download ảnh từ một link và lưu vào ổ cứng theo tên mong muốn bằng PHP.

1. Dùng file_get_contents() và file_put_contents()
Đầu tiên chúng ta cần tạo một file php, ở đây mình đặt tên là autodown.php
Ta cần tạo một form nhập dữ liệu bằng HTML.

Form có method=”post” và action=”autodown.php” để khi submit dữ liệu nhập vào sẽ được gửi đến và xử lý ở chính file autodown.php.

download anh tu url 1

Tự download ảnh trong một link và lưu vào ổ cứng theo tên mong muốn bằng PHP

Tiếp theo chúng ta viết code php xử lý việc down và lưu ảnh:

 

Ta dùng 2 hàm trong php đó là file_get_contents() và file_put_contents():
Hàm file_get_contents($url) dùng để lấy nội dung một file, trong đó $url là đường dẫn đến file cần get, nó có thể là đường link đến một trang bất kỳ và nó sẽ trả về nội dung html của trang web đó.

Hàm file_put_contents($path, &content) dùng để ghi nội dung cho một file, trong đó $path là đường dẫn đến file cần ghi, $content là nội dung bạn muốn ghi vào file.

Như ở đoạn code trên thì mình đã lưu ảnh vào một file có tên chính là Title nhập vào từ form và lưu cùng thư mục với file autodown.php.

VD, mình có một đường link có chứa một ảnh

download anh tu url 2

Tự download ảnh trong một link và lưu vào ổ cứng theo tên mong muốn – PHP

Mình copy đường link này và paste vào phần URL trong form nhập dữ liệu, phần Title mình nhập ech.jpg rồi ấn Submit, kết quả ta sẽ được một ảnh có tên ech.jpg lưu cùng thư mục với file autodown.php

tu download anh tu url 3

Tự download ảnh trong một link và lưu vào ổ cứng theo tên mong muốn bằng PHP

Bạn có thể tùy chỉnh $img_path để lưu ảnh vào thư mục mà mình mong muốn.

2. Dùng curl
Về curl các bạn có thể tham khảo chi tiết ở một bài viết khác trong diễn đàn
http://phpcoban.com/curl-trong-php/

getHeader function

download function

Usages

 

 

You may also like...

4 Responses

  1. long says:

    cái này đang không phải dùng Curl nhé

  2. long says:

    giả sử link là 1 bài viết thì làm sao lấy được ảnh trong bài viết. Em nên demo 1 cái như thế

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">