PHP-এ আপেক্ষিক পথ
আপনি ইতিমধ্যেই জানেন, file_get_contents ফাংশনের প্যারামিটারে
ফাইলের নাম লিখতে হবে। যাইহোক, এটি শুধুমাত্র তখনই কাজ করে
যখন পড়া ফাইলটি সেই ফোল্ডারে থাকে
যেখানে আমাদের স্ক্রিপ্টটি চালু হয়।
যদি ফাইলটি অন্য কোথাও থাকে, তবে প্যারামিটারে ফাংশনে সেই ফাইলের পথ লিখতে হবে।
একটি উদাহরণ দিয়ে দেখি।
উদাহরণ
ধরুন আমাদের নিম্নলিখিত ফাইল স্ট্রাকচার আছে:
- index.php
- /directory/
- test.txt
আসুন টেক্সট ফাইলের বিষয়বস্তু পড়ি। এটি করার জন্য, ফাইলের নাম ছাড়াও আমাদের যে ফোল্ডারে এটি রয়েছে তা নির্দিষ্ট করতে হবে:
<?php
echo file_get_contents('directory/test.txt');
?>
উদাহরণ
ধরুন আমাদের নিম্নলিখিত ফাইল স্ট্রাকচার আছে:
- /script/
- index.php
- test.txt
এই ক্ষেত্রে, আমাদের ফাইল পড়ার চেষ্টা, এর পথ হিসাবে এর নাম নির্দিষ্ট করে, ব্যর্থ হবে একটি ত্রুটির সাথে:
<?php
echo file_get_contents('test.txt'); // একটি ত্রুটি দেবে
?>
কেন একটি ত্রুটি দেওয়া হয়? বিষয়টি হল আমরা ফাংশনের প্যারামিটারে ফাইলের নাম লিখেছি। এটি এর মানে হল যে পড়া ফাইলটি স্থাপন করা উচিত একই ফোল্ডারে যেখানে এক্সিকিউটেবলটি চালু হয়।
যাইহোক, আমাদের পড়া ফাইলটি এক লেভেল উপরে রয়েছে, অর্থাৎ, সেই ফোল্ডারে যেটিতে স্ক্রিপ্ট সহ ফোল্ডার রয়েছে।
এই ক্ষেত্রে, আমাদের অবশ্যই পথে স্পষ্টভাবে নির্দিষ্ট করতে হবে
ফাইলে, যে এই ফাইলটি একটি লেভেল উপরে খুঁজতে হবে
এটির জন্য, ফাইলের নামের আগে লিখতে হবে
../. আসুন এটি করি:
<?php
echo file_get_contents('../test.txt'); // ফাইলটি পড়া হবে
?>
উদাহরণ
ধরুন আমাদের নিম্নলিখিত ফাইল স্ট্রাকচার আছে:
- /script/
- index.php
- /directory/
- test.txt
এই ক্ষেত্রে, ফাইল পড়ার সময় আমরা প্রথমে এক লেভেল উপরে যাব, এবং তারপর পথ নির্দেশ করব আমাদের ফাইলের দিকে এই লেভেলের সাপেক্ষে:
<?php
echo file_get_contents('../directory/test.txt');
?>
উদাহরণ
ধরুন আমাদের নিম্নলিখিত ফাইল স্ট্রাকচার আছে:
- /script/
- /test/
- index.php
- /test/
- /directory/
- test.txt
এই ক্ষেত্রে, আমাদের উপরে যাওয়ার প্রয়োজন হবে দুইবার:
<?php
echo file_get_contents('../../directory/test.txt');
?>
ব্যবহারিক কাজ
এমন কোড লিখুন যা বিষয়বস্তু পড়বে টেক্সট ফাইলের:
- index.php
- /dir1/
- /dir2/
- test.txt
- /dir2/
এমন কোড লিখুন যা বিষয়বস্তু পড়বে টেক্সট ফাইলের:
- /script/
- index.php
- /dir1/
- /dir2/
- test.txt
- /dir2/
এমন কোড লিখুন যা বিষয়বস্তু পড়বে টেক্সট ফাইলের:
- /script1/
- /script2/
- index.php
- /script2/
- /dir/
- test.txt
এমন কোড লিখুন যা বিষয়বস্তু পড়বে টেক্সট ফাইলের:
- /script1/
- /script2/
- /script3/
- index.php
- /script3/
- /script2/
- /dir1/
- /dir2/
- /dir3/
- test.txt
- /dir3/
- /dir2/