__DIR__ ব্যবহার করে বর্তमान কোড ওয়ার্কিং ডিরেক্টরি পাওয়া যায়। এটি PHP 5.3 সংস্করণ থেকে ইন্ট্রোডিউস করা হয়েছে। এটি dirname(__FILE__) ব্যবহার করার মতো। সাধারণত, এটি একটি ইনক্লুডেড ফাইলে থাকা অন্য ফাইল ইনক্লুড করতে ব্যবহৃত হয়।
নিচের ডিরেক্টরি স্ট্রাকচার বিবেচনা করুন:
"master" নামে একটি ডিরেক্টরি, যাতে 'worker_1' এবং 'worker_2' নামে দুটি ফাইল রয়েছে। master ডিরেক্টরি নিজে মেইন প্রজেক্ট ডিরেক্টরির একটি সাবফোল্ডার।
প্রজেক্ট ডিরেক্টরিতেও একটি index.php ফাইল রয়েছে।
আমাদের প্রজেক্টের ডিরেক্টরির সাবফোল্ডার 'inc' নামে একটি ডিরেক্টরিতে দুটি ফাইল থাকলে:
project_directory ├── master │ ├── worker_1.php │ └── worker_2.php └── index.php
যদি আমরা index.php থেকে কোড এক্সিকিউট করি:
include "master/worker_1.php";
এটি সফলভাবে রান হবে।
কিন্তু worker_1.php-তে worker_2.php ইনক্লুড করে রান করাতে, index.php ফাইলের সাপেক্ষে একটি রিলেটিভ ইনক্লুড করতে হবে, নিচেরভাবে:
include "master/worker_2.php";
__DIR__ ব্যবহার করলে এটি চলে। worker_1.php থেকে নিচের কোড এক্সিকিউট করা যাবে:
<?php include __DIR__ . "/worker_2.php";