ให้เรตสมาชิก: 5 / 5

ดาวใช้งานดาวใช้งานดาวใช้งานดาวใช้งานดาวใช้งาน
 

สำหรับใครที่ต้องการแปลงภาพจาก URL ของภาพสามารถใช้ ฟังก์ชัน file_get_contents() ได้ในกรณี Server ปลายทางอนุญาติให้เราเข้าไปอ่านขอมูล ได้ allow_url_fopen เป็น true เราสามารถอ่านไฟล์ และ save ไฟล์ได้ง่ายๆ เลย

$url = 'http://example.com/image.php';
$img = '/my/folder/flower.png';
file_put_contents($img, file_get_contents($url));

แต่ถ้าปลายทางไม่อนุญาติ ก็อาจต้องใช้ curl หรือ web service  ช่วย

 

ตัวอย่างด้านล่างนี้เป็นการใช้ web service ช่วยส่ง url หน้าเว็บเพจ หรือ url ไฟล์ภาพ และ แปลงกลับมาเป็นไฟล์ภาพ

ตัวอย่างแรก เป็นการแปลง URL ที่เป็น HTML ของหน้าเว็บเป็นไฟล์ภาพ จาก webservice

<?php 	
	$url = 'https://www.mindphp.com/forums/index.php'; // หน้าเว็บที่ต้องการแปลงเป็นไฟล์ภาพ
	$api_endpoint = '[Web Service Server]';
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, $api_endpoint . $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_USERPWD, 'demo' . ":" . 'demo');
        curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
        $output = curl_exec($ch);

       header ('Content-Type: image/jpg'); // บอก Browser ว่าให้แสดงเป็นไฟล์ภาพ

        echo $output;
        exit();
?>

ส่วนนี้ถ้าต้องการให้ ผู้ใช้ ดาวน์โหลดไฟล์ภาพออกไปสามารถใช้ header ด้านล่างนี้ เพิ่มเข้าไปก่อน echo ได้

header("Cache-Control: no-store, no-cache");  
header('Content-Disposition: attachment; filename="mindphp-download.jpg"');

 

ตัวอย่างที่สอง เป็นการแปล URL ของหน้าเว็บเป็นไฟล์ภาพ จาก Webservice

<?php
		$url = 'https://www.mindphp.com/forums/index.php';
		$api_endpoint = '[URL Web Service]';
		$ch = curl_init();
		curl_setopt($ch, CURLOPT_URL, $api_endpoint . $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_USERPWD, 'demo' . ":" . 'demo');
        curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
        $output = curl_exec($ch);

	file_put_contents('tmp1.jpg', $output); // ตั้งชื่อไฟล์ภาพ และเขียนลงไฟล์ด้วย ฟังก์ชั่น 
?>

อ่านเพิ่มเพิ่มรายละเอียดการใช้ฟังก์ชั่น ฟังก์ชัน file_put_contents()

ตัวอย่างไฟล์ ภาพจากตัวอย่าง URL นี้ ไฟล์นี้ไม่ได้ ย่อ เป็นไฟล์ต้นฉบับที่ได้จากการแปลงจะเห็นว่า ทุกอย่างเหมือนกับการที่เราเปิดหน้าจอ แล้ว capture ภาพเลย

ใครสนใจ ทดลองใช้ Web Service  แปลง URL ของหน้าเว็บเป็นภาพ ติดต่อได้ที่นี่

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
เอาโฟล์เดอร์ออกยังไงครับ
โดย chakirin.bfds จ 18 ม.ค. 2021 3:26 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
4
จ 18 ม.ค. 2021 3:34 pm โดย mindphp
5 เหตุผลที่ควรจ้างบริษัทรับทำ SEO สำหรับธุรกิจของคุณ !
โดย totheworld จ 18 ม.ค. 2021 2:34 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
2
จ 18 ม.ค. 2021 2:34 pm โดย totheworld
ทางฝุ่น ขรุขระ ลุยไหนลุยกันกับ ยางรถยนต์ 4x4 คุณภาพสูงที่ออกแบบมาให้ถูกใจสายลุย
โดย unyana จ 18 ม.ค. 2021 11:38 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
4
จ 18 ม.ค. 2021 11:38 am โดย unyana
สอบถามคำสั่งดึง IPV6
โดย eange08 จ 18 ม.ค. 2021 11:09 am บอร์ด Programming - PHP
1
16
จ 18 ม.ค. 2021 1:37 pm โดย mindphp
G - สรุปปัญหาการใช้งาน php odbc และ sql server บน ubuntu
โดย tsukasaz ส 21 ก.พ. 2015 2:52 pm บอร์ด Programming - PHP
1
3
อ 22 ก.พ. 2015 2:09 am โดย mindphp
สอบถามคำศัพท์เทคนิค Droplet คืออะไร
โดย Kannaphat ศ 15 ม.ค. 2021 6:16 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
2
25
อ 17 ม.ค. 2021 4:51 pm โดย mindphp
ต่างกันแค่ไหน? เทียบหมัดต่อหมัด iPhone รุ่นใหม่ล่าสุด กับ iPhone 11
โดย unyana ส 16 ม.ค. 2021 11:47 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
14
ส 16 ม.ค. 2021 11:47 pm โดย unyana
โปรแกรม Kdenlive สามารถ add ไฟล์รูปเข้าไปในโปรแกรมได้ไหมคะ
โดย Kannaphat ส 16 ม.ค. 2021 3:46 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
2
20
ส 16 ม.ค. 2021 3:57 pm โดย Kannaphat