دستور do while در PHP یکی از ساختارهای کنترلی برای اجرای تکراری کد است که حداقل یکبار اجرا میشود، حتی اگر شرط آن از ابتدا نادرست باشد. این ویژگی باعث میشود که این دستور با while تفاوت داشته باشد، زیرا در while ابتدا شرط بررسی میشود و سپس بدنهی دستور اجرا میشود. در حالی که در do while ابتدا بدنهی دستور اجرا شده و سپس شرط بررسی میشود، که این امر در مواقعی که حداقل یکبار اجرای کد ضروری است، کاربرد دارد. به این ترتیب، استفاده از do while در سناریوهایی که باید کدی حداقل یکبار اجرا شود، مانند درخواست ورودی از کاربر یا انجام عملیاتی که نتیجهی اولیه آن مهم است، بسیار مفید است.
مقدمه
دستور do while در PHP معمولاً در شرایطی استفاده میشود که نیاز به دریافت ورودی از کاربر یا پردازش دادههایی وجود دارد که باید حداقل یکبار پردازش شوند. از آنجایی که شرط بعد از اجرای کد بررسی میشود، این دستور میتواند در برخی موارد از while کارآمدتر باشد. با این حال، همانند سایر دستور ها، باید دقت شود که شرط بهدرستی مدیریت شود تا از ایجاد دستور های بینهایت جلوگیری گردد. در این آموزش از سری مقاله های مجله پس استور، خواهید آموخت که چگونه از دستور do while در PHP برای اجرای مکرر یک بلوک کد استفاده کنید.
مقدمهای بر دستور do while در PHP
دستور do while در PHP در PHP این امکان را فراهم میکند که یک بلوک کد را بر اساس یک عبارت بولی بهصورت مکرر اجرا کنید. در ادامه نحوه نگارش این دستور ارائه شده است:
<?php do { statement; } while (expression);
دستور do while در PHP برخلاف دستور while، ابتدا بدنهی خود را اجرا کرده و سپس شرط را ارزیابی میکند. این یعنی که حتی اگر شرط از ابتدا نادرست باشد، دستور حداقل یکبار اجرا خواهد شد. این ویژگی باعث میشود که do while برای مواردی که اجرای اولیهی کد ضروری است، مناسب باشد.
برای درک بهتر نحوهی عملکرد این دستور، میتوان از یک فلوچارت استفاده کرد که فرآیند اجرای کد، بررسی شرط، و ادامه یا خروج از دستور را نشان دهد. در این نمودار، ابتدا دستورات داخل دستور اجرا شده و سپس شرط بررسی میشود. اگر شرط درست باشد، اجرای دستور ادامه مییابد و در غیر این صورت، دستور متوقف میشود.
تفاوتهای بین دستور do while و while در PHP
دستور do while در PHP، کد داخل دستور حداقل یکبار اجرا میشود، حتی اگر شرط از ابتدا نادرست باشد. اما در while، اگر شرط نادرست باشد، بدنهی دستور هرگز اجرا نخواهد شد.
در do while، شرط در انتهای هر تکرار بررسی میشود، درحالیکه در while، شرط قبل از اجرای هر تکرار بررسی میشود.
مثال دستور do while در PHP
در مثال زیر، بلوک کد داخل do while دقیقا یکبار اجرا میشود، حتی اگر شرط از ابتدا نادرست باشد:
<?php $i = 0; do { echo $i; } while ($i > 0);
ابتدا کد داخل بدنهی دستور اجرا میشود و مقدار متغیر i$ نمایش داده میشود. از آنجایی که مقدار اولیهی i$ برابر ۰ است، اگر شرط برقرار نباشد، دستور متوقف میشود.
در مثالی که در ادامه آمده، دستور do while در PHP ده بار اجرا خواهد شد. این به این دلیل است که مقدار متغیر در هر تکرار تغییر میکند و شرط تا زمانی که به مقدار مشخصی نرسد، برقرار خواهد ماند.
<?php $i = 10; do { echo $i . '<br>'; $i--; } while ($i > 0);
نتیجه گیری
دستور do while در PHP یک ابزار مفید برای اجرای تکراری دستورات است که حداقل یکبار اجرا میشود، حتی اگر شرط اولیه نادرست باشد. این ویژگی باعث میشود که از آن در شرایطی استفاده کنیم که نیاز به انجام عملیاتی داریم که باید حداقل یکبار اجرا شوند، مثل نمایش پیام به کاربر یا پردازش دادهها. از آنجایی که شرط در انتهای هر تکرار بررسی میشود، این دستور در مقایسه با while عملکرد خاصی را ارائه میدهد که در مواردی مفید است.
با این حال، استفاده از do while باید با دقت انجام شود تا از بروز دستور های بینهایت جلوگیری گردد. این دستور بهویژه زمانی که شرایط پیچیده یا ورودیهای کاربر در میان است، میتواند مؤثر باشد، اما همواره باید مراقب بود که شرط خروج بهدرستی تعریف شود. در مجموع، دستور do while در PHP یکی از ابزارهای قدرتمند PHP است که برای انجام کارهای تکراری در شرایط خاص کاربرد دارد.