is_upload
วิธีการใช้ฟังก์ชัน is_upload
is_upload
ฟังก์ชัน is_upload
ใช้สำหรับอัปโหลดไฟล์จากอินพุตในรูปแบบของ $_FILES
โดยมีการตั้งค่าชื่อไฟล์, โฟลเดอร์ย่อย, และไดเรกทอรีที่ต้องการเก็บไฟล์
พารามิเตอร์
$FILES
(required) - อาร์เรย์ข้อมูลไฟล์ที่ส่งมาจากอินพุต เช่น$_FILES['file']
$name
(optional) - ชื่อไฟล์ที่ต้องการตั้ง หากไม่ระบุจะสร้างชื่อ UUID อัตโนมัติ$subdir
(optional) - โฟลเดอร์ย่อยภายในไดเรกทอรีที่กำหนดเพื่อเก็บไฟล์$dir
(optional) - ไดเรกทอรีหลักที่ต้องการเก็บไฟล์ หากไม่ระบุจะใช้ไดเรกทอรี/uploads
ในโปรเจกต์เป็นค่าเริ่มต้น
ตัวอย่างการใช้งาน
อัปโหลดไฟล์ด้วยการตั้งชื่อไฟล์อัตโนมัติและใช้ไดเรกทอรีค่าเริ่มต้น
$result = $_PNA->is_upload($_FILES['file']); print_r($result);
ผลลัพธ์:
Array ( [status] => true [main] => /path/to/project/uploads [path] => /path/to/project/uploads/subdir/ [name] => generated_uuid.extension [full_path] => https://example.com/uploads/subdir/generated_uuid.extension )
อัปโหลดไฟล์ด้วยชื่อไฟล์และโฟลเดอร์ย่อยที่กำหนดเอง
$result = $_PNA->is_upload($_FILES['file'], 'custom_name', 'images'); print_r($result);
ผลลัพธ์:
Array ( [status] => true [main] => /path/to/project/uploads [path] => /path/to/project/uploads/images/ [name] => custom_name.extension [full_path] => https://example.com/uploads/images/custom_name.extension )
กรณีที่ไม่มีไฟล์ถูกอัปโหลด
$result = $_PNA->is_upload($_FILES['file']); print_r($result);
ผลลัพธ์:
Array ( [status] => false [msg] => Not Files. )
ผลลัพธ์ที่ได้:
ถ้าอัปโหลดสำเร็จ: จะได้อาร์เรย์ที่ประกอบด้วยสถานะ (
status
), ที่ตั้งไดเรกทอรีหลัก (main
), ที่ตั้งโฟลเดอร์ (path
), ชื่อไฟล์ (name
), และ URL เต็มของไฟล์ (full_path
)ถ้าอัปโหลดไม่สำเร็จหรือไม่มีไฟล์: จะส่งกลับสถานะ
false
พร้อมข้อความ"Not Files."
หมายเหตุ: ฟังก์ชันนี้จะสร้างโฟลเดอร์ใหม่อัตโนมัติหากโฟลเดอร์ที่ระบุไม่มีอยู่
Last updated