EXIF (Exchangeable image file format) PHP এক্সটেনশন ডিজিটাল ডিভাইস যেমন ডিজিটাল ক্যামেরা, সেল ফোন, ইত্যাদি দ্বারা তুলে ছবির মেটাডেটা নিয়ে কাজ করতে সক্ষম করে। এটি ইমেজ ফাইল ফরম্যাটের ওপর নির্ভর করে। আমরা ইমেজের এম্বেডেড থাম্বনেইল রিট্রিভ করতে পারি।
exif_imagetype() ফাংশনটি PHP-এ একটি ইমেজের টাইপ নির্ধারণ করতে ব্যবহৃত হয়। এই ফাংশন একটি দেয়া ইমেজের প্রথম বাইটগুলো পড়ে এবং এর সিগনেচার চেক করে। এটি অন্য EXIF ফাংশন কল এড়াতে ব্যবহার করা যায় আনসাপোর্টেড ফাইল টাইপের জন্য বা $_SERVER['HTTP_ACCEPT'] এর সাথে কনজังกশনে ব্যবহার করা যায় ব্রাউজারে ভিউয়ার নির্দিষ্ট ইমেজ দেখতে পাচ্ছে কিনা চেক করতে।
সিনট্যাক্স
integer exif_imagetype($str filename)
প্যারামিটার
exif_imagetype() শুধু একটি প্যারামিটার $filename গ্রহণ করে যা ইমেজের নাম ধারণ করে।
রিটার্ন ভ্যালু
যখন একটি সঠিক সিগনেচার পাওয়া যায়, তবে exif_imagetype() উপযুক্ত কনস্ট্যান্ট ভ্যালু রিটার্ন করে; অন্যথায় এটি False রিটার্ন করে।
ইমেজ টাইপ কনস্ট্যান্টের তালিকা
| মান | কনস্ট্যান্ট | মান | কনস্ট্যান্ট |
|---|---|---|---|
| 1 | IMAGETYPE_GIF | 10 | IMAGETYPE_JP2 |
| 2 | IMAGETYPE_JPEG | 11 | IMAGETYPE_JPX |
| 3 | IMAGETYPE_PNG | 12 | IMAGETYPE_JB2 |
| 4 | IMAGETYPE_SWF | 13 | IMAGETYPE_SWC |
| 5 | IMAGETYPE_PSD | 14 | IMAGETYPE_IFF |
| 6 | IMAGETYPE_BMP | 15 | IMAGETYPE_WBMP |
| 7 | IMAGETYPE_TIFF_II (ইন্টেল বাইট অর্ডার) | 16 | IMAGETYPE_XBM |
| 8 | IMAGETYPE_TIFF_MM (মোটোরোলা বাইট অর্ডার) | 17 | IMAGETYPE_ICO |
| 9 | IMAGETYPE_JPC | 18 | IMAGETYPE_WEBP |
উদাহরণ ১
<?php
// লোকাল ড্রাইভ থেকে একটি ইমেজ লোড করুন
$filetype = exif_imagetype('C:\xampp\htdocs\test\office.jpg');
// আউটপুট
echo "The file type is: ", $filetype;
?>
এখানে আমরা নিচের jpg ইমেজটি ব্যবহার করেছি:

আউটপুট
The file type is: 2
উদাহরণ ২
এখন একটি "png" ইমেজ নিয়ে একই কোড চালাই:
<?php
// লোকাল ড্রাইভ থেকে একটি ইমেজ লোড করুন
$filetype = exif_imagetype('C:\xampp\htdocs\test\img46.png');
// আউটপুট
echo "The file type is: ", $filetype;
?>
এখানে আমরা নিচের png ইমেজটি ব্যবহার করেছি:

আউটপুট
The file type is: 3