do…while লুপ PHP-র একটি লুপ কন্ট্রোল স্ট্রাকচার যা অন্তত একবার কোড ব্লক চালায়, তারপর শর্ত যাচাই করে। এটি while লুপের একটি ভিন্ন রূপ যেখানে কোড আগে চালানো হয়, তারপর শর্ত চেক করা হয়।
do…while লুপ এর গঠন (Syntax):
do {
// কোড ব্লক
} while (condition);
ব্যাখ্যা: প্রথমে do এর ভিতরের কোড একবার এক্সিকিউট হয়, তারপর while শর্ত চেক করা হয়। শর্ত সত্য (true) থাকলে কোড আবার চলবে।
উদাহরণ ১: ১ থেকে ৫ পর্যন্ত সংখ্যা প্রিন্ট
$i = 1;
do {
echo $i . "<br>";
$i++;
} while ($i <= 5);
আউটপুট:
1
2
3
4
5
উদাহরণ ২: শর্ত শুরুতেই মিথ্যা হলেও একবার কোড চলবে
$x = 10;
do {
echo "কোড এক্সিকিউট হয়েছে।";
} while ($x < 5);
আউটপুট: কোড এক্সিকিউট হয়েছে।
উপরের ক্ষেত্রে শর্ত false হলেও কোড একবার চলেছে। কারণ do...while প্রথমে কোড চালায়, পরে শর্ত যাচাই করে।
do…while vs while লুপ
| while লুপ | do…while লুপ |
|---|---|
| শর্ত প্রথমে চেক করা হয় | শর্ত পরে চেক করা হয় |
| কোড ব্লক একবারও নাও চালাতে পারে | কমপক্ষে একবার কোড ব্লক চালায় |
উদাহরণ ৩: ইউজার ইনপুট নেয়া (সাধারণ লজিক)
ধরা যাক, ইউজার যতক্ষণ না ‘exit’ টাইপ করে, ততক্ষণ পর্যন্ত লুপ চলবে (এটি CLI বা কনসোলে কার্যকর)।
do {
$input = readline("কিছু লিখুন (exit লিখে বন্ধ করুন): ");
echo "আপনি লিখেছেন: $input\n";
} while ($input != "exit");
বিঃদ্রঃ এই কোডটি CLI (Command Line Interface) তে কাজ করবে।
উপসংহার:
do…while লুপ তখনই ব্যবহার করা উচিত যখন আপনি চান কোড অন্তত একবার চালানো হোক, তারপর শর্ত যাচাই করা হোক। এটি বিশেষ করে ইনপুট ভ্যালিডেশন বা মেনু-চালিত প্রোগ্রামে উপকারী।