ফাইলসিস্টেম
এই চ্যাপ্টারে আমরা পিএইচপির ডিরেক্টরী এবং ফাইল সম্পর্কিত কিছু ব্যাসিক অপারেশন দেখবো । এখানে দেখানো পদ্ধতি ছাড়াও আরো নানা পদ্ধতিতে একই কাজ করা যেতে পারে । আপাতত আমরা একটি করে পদ্ধতি দেখবো । পরবর্তীতে আমরা আরো এ্যাডভান্সড ব্যবহার দেখবো ।
ডিরেক্টরী তৈরি করা
আমরা নতুন একটি ডিরেক্টরী বা ফোল্ডার তৈরি করতে পারি mkdir
ফাংশনটি ব্যবহার করে ।
এখানে আমরা আমাদের কারেন্ট লোকেশনে test_dir
নামে একটি ডিরেক্টরী তৈরি করেছি যেটার পার্মিশন লেভেল - 0755
। পার্মিশন সম্পর্কে আরো বিস্তারিত জানতে লিনাক্স ফাইল পার্মিশন এর উপর গুগলে সার্চ করতে পারেন ।
এই ফাংশনটি ৩য় আরেকটি বুলিয়ান আর্গুমেন্ট নেয় - যদি আমরা চাই নেস্টেড ডিরেক্টরী তৈরি করতে (যেমন: "my_dir/sub_dir/another_dir") তাহলে এই প্যারামিটার এর জন্য আমরা true
পাস করবো । অন্যথায় পিএইচপি এরর থ্রো করবে ।
ডিরেক্টরী ব্রাউজ করা
আমরা কোন ডিরেক্টরী এর কন্টেন্ট ব্রাউজ করার জন্য scandir
ফাংশনটি ব্যবহার করতে পারি ।
এই ফাংশনটির প্রথম প্যারামিটার ফাইল পাথ এ্যাক্সেপ্ট করে । যেই ডিরেক্টরীর কন্টেন্ট আমরা ব্রাউজ করতে চাই সেটির পাথ আমরা এই আর্গুমেন্ট হিসেবে পাস করবো । ২য় প্যারামিটারটি আমরা সর্টিং এর জন্য ব্যবহার করি । এটির ভ্যালু হিসেবে আমরা এই ৩টি কন্সট্যান্ট এর যে কোনটি পাস করতে পারি:
SCANDIR_SORT_ASCENDING
SCANDIR_SORT_DESCENDING
SCANDIR_SORT_NONE
এই প্যারামিটারটির জন্য ডিফল্ট ভ্যালু হিসেবে SCANDIR_SORT_ASCENDING
থাকে ।
ডিরেক্টরী ডিলিট করা
rmdir
ফাংশনটি ব্যবহার করে আমরা কোন ডিরেক্টরী ডিলিট করতে পারি:
তবে ডিরেক্টরী ডিলিট করার আগে নিশ্চিত হতে হবে যে এই ডিরেক্টরীটি ফাকা আছে কিনা । যদি এটির মধ্যে অন্য কোন ফাইল বা সাব ডিরেক্টরী থাকে তবে আগে সেগুলো ডিলিট করে নিতে হবে ।
ফাইল তৈরি করা / ফাইলে কন্টেন্ট যোগ করা
file_put_contents
ফাংশনটি ব্যবহার করে আমরা একটি ফাইলের কন্টেন্ট ওভাররাইট করতে পারি । যদি ঐ ফাইলটি আগে থেকে তৈরি করা না থাকে তাহলে ফাংশনটি ফাইলটি তৈরি করে নেয় ।
ডিফল্টভাবে পিএইচপি ফাইলের কন্টেন্ট ওভাররাইট করে, অর্থাৎ আগের সব কিছু মুছে ফেলে নতুন করে কন্টেন্ট যোগ করে । আমরা যদি চাই আগের কন্টেন্টের সাথে অতিরিক্ত নতুন কন্টেন্ট যোগ করতে তাহলে আমরা ৩য় আর্গুমেন্ট হিসেবে FILE_APPEND
কন্সট্যান্টটি পাস করবো । যেমন:
এবার যদি আমরা ফাইলটি খুলি তাহলে দেখবো আমাদের আগের কন্টেন্ট এর সাথে এই নতুন টেক্সট যোগ হয়েছে ।
ফাইল পড়া
file_get_contents
ফাংশনটিতে কোন ফাইল পাথ পাস করলে এটি ঐ ফাইলের কন্টেন্ট রিটার্ন করবে ।
মজার একটা ব্যাপার হচ্ছে এই ফাংশনটি ওয়েব এ্যাড্রেসও সাপোর্ট করে, অর্থাৎ ওয়েবে থাকা কোন কন্টেন্টও আপনি পড়তে পারবেন এভাবে:
ফাইল ডিলিট করা
ফাইল ডিলিট করার জন্য আমরা unlink
ফাংশনটি ব্যবহার করি ।
Last updated