কম্পিউটার টিউটোরিয়াল

PHP $_FILES


ভূমিকা

গ্লোবাল প্রিডিফাইনড ভেরিয়েবল $_FILES একটি অ্যাসোসিয়েটিভ অ্যারে যাতে HTTP POST মেথড দিয়ে আপলোড করা আইটেমগুলো থাকে। ফাইল আপলোড করতে HTTP POST মেথড ফর্ম দরকার যার enctype অ্যাট্রিবিউট multipart/form-data সেট করা থাকে।

$HTTP_POST_FILESও একই ইনফো ধারণ করে, কিন্তু এটি সুপারগ্লোবাল নয় এবং এখন ডিপ্রিকেটেড।

_FILES অ্যারেতে নিচের প্রপার্টিগুলো থাকে—

$_FILES['file']['name'] — আপলোড করার ফাইলের মূল নাম।

$_FILES['file']['type'] — ফাইলের MIME টাইপ।

$_FILES['file']['size'] — আপলোড করা ফাইলের সাইজ (বাইটে)।

$_FILES['file']['tmp_name'] — সার্ভারে আপলোড করা ফাইল যেখানে আপসাল থাক았던 সেটির টেম্পোরারি ফাইলনেম।

$_FILES['file']['error'] — এই ফাইল আপলোডের সাথে জড়িত এরর কোড।

নিচের test.html-এ একটি HTML ফর্ম আছে যার enctype সেট করা আছে multiform/form-data। এতে একটি ইনপুট ফাইল এলিমেন্টও আছে যা ফর্মে একটি বাটন দেখায় যেটি ক্লিক করে ইউজার আপলোড করার ফাইল সিলেক্ট করে।

<form action="testscript.php" method="POST" enctype="multipart/form-data">    <input type="file" name="file">    <input type="submit" value="submit"> </form>

PHP স্ক্রিপ্টটি নিচের মতো—

উদাহরণ

<?php echo "Filename: " . $_FILES['file']['name'] . "<br>"; echo "Type : " . $_FILES['file']['type'] . "<br>"; echo "Size : " . $_FILES['file']['size'] . "<br>"; echo "Temp name: " . $_FILES['file']['tmp_name'] . "<br>"; echo "Error : " . $_FILES['file']['error'] . "<br>"; ?>

আউটপুট

এটি নিচের ফলাফল দেবে—

Filename: hello.html Type : text/html Size : 56 Temp name: C:\xampp\tmp\php32CE.tmp Error : 0

  1. PHP ফাইল কী? খোলা, এডিট, কনভার্ট ও HTML-এর সাথে কাজ করার গাইড

  2. PHP-তে fopen() ফাংশন

  3. PHP-তে filetype() ফাংশন

  4. PHP-তে file_get_contents() ফাংশন