ขอตัวอย่างตัว download หลายๆ ไฟล์ออกมาเป็น .zip

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
eange08
PHP VIP Members
PHP VIP Members
โพสต์: 16441
ลงทะเบียนเมื่อ: 22/12/2020 10:09 am

ขอตัวอย่างตัว download หลายๆ ไฟล์ออกมาเป็น .zip

โพสต์ที่ยังไม่ได้อ่าน โดย eange08 »

อยากจะขอตัวอย่างโค้ดกับแนวทางสำหรับ download หลายๆ ไฟล์ในหน้านั้นๆ แล้วออกมาเป็นไฟล์ .zip ได้ไหมค่ะ
เหมือนแบบนี้นะคะ
Screenshot from 2021-01-07 10-17-33.png
ภาพประจำตัวสมาชิก
tsukasaz
PHP VIP Members
PHP VIP Members
โพสต์: 22143
ลงทะเบียนเมื่อ: 18/04/2012 9:39 am

Re: ขอตัวอย่างตัว download หลายๆ ไฟล์ออกมาเป็น .zip

โพสต์ที่ยังไม่ได้อ่าน โดย tsukasaz »

ตัวอย่างโค้ดนะครับ

สำหรับในตัวอย่างนี้ไฟล์ทุกไฟล์จะอยู่ในโฟลเดอร์เดียวกัน เพราะฉะนั้นการกำหนดที่อยู่ไฟล์จึงใส่แค่ชื่ออย่างเดียว

แต่ในกรณีที่นำไปใช้งานจริง ไฟล์อยู่คนละโฟลเดอร์ ต้องกำหนดที่อยู่ไฟล์อ้างอิงตามโฟลเดอร์นั้นๆ นะครับ

กรณีถ้าไม่สามารถสร้างไฟล์ zip ได้ ลองเปลี่ยน permission ของโฟลเดอร์ก่อนครับ

โค้ด: เลือกทั้งหมด

<?php
// ที่อยู่ของไฟล์ zip ที่ต้องการสร้าง
$zip_path = 'image.zip';

// ที่อยู่ของไฟล์รูปภาพ
$image1_path = 'test1.png';
$image2_path = 'test2.png';

// เรียกใช้ class ZipArchive ของ php
$zip = new ZipArchive();
// คำสั่งสำหรับสร้างไฟล์ zip ตามที่อยู่ไฟล์ที่เรากำหนดไว้ในตัวแปร $zip_path
$zip->open($zip_path, ZIPARCHIVE::CREATE);
// เพิ่มไฟล์เข้าไปใน zip อันนี้จะใส่ตัวแปร $image1_path ที่กำหนดที่อยู่รูปภาพไว้
$zip->addFile($image1_path, basename($image1_path));
$zip->addFile($image2_path, basename($image2_path));
// ปิดไฟล์ zip
$zip->close();

ในส่วนของรูปภาพที่มีหลายรูปสามารถใช้ loop ในการเพิ่มไฟล์เข้าไปใน zip ได้
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: facebook.com [Crawler] และบุคลทั่วไป 106