آموزش دستور goto در php
دستور goto برای پریدن برنامه به یک نقطه ی جدید استفاده می شود.
می دانیم که موتور php دستورات را خط به خط اجرا می کند. با دستور goto می توانیم کاری کنیم که وقتی موتور php به این دستور رسید، به او بگوییم اکنون خطوط بعد را اجرا نکن تا زمانی که من به تو بگویم!
echo 1; echo 2; goto a; echo 3; echo 4; a: echo 5; echo 6; //output: 1256
مشاهده می کنید که نام goto ما a هست و تا زمانی که به آن نرسیم، خطوط مابین اجرا نمی شود. (خطوط 4 و 5 نادیده گرفته می شود)
ساختار دستور goto در php
//statements1 goto gotoName; //statements2 gotoName: //statements3
چنانچه مشاهده می کنید ممکن است قبل اعلان goto یکسری دستورات داشته باشیم که اجرا می شوند. (statements1)
در بخش دوم، دستور goto اعلان می شود. نام goto به حروف کوچک و بزرگ حساس است.
در بخش سوم دستوراتی هستند که نادیده گرفته می شوند تا به تارگت goto برسیم. (statements2)
در بخش چهارم تارگت goto را مشاهده می کنید که نام goto به علاوه یک کولون می باشد.
در بخش آخر نیز دستوراتی هستند که php شروع به اجرای آن ها می کند. (statements3)
نکته مهم: اعلان goto و تارگت آن هر دو باید در یک file و یک context باشند.
استفاده از دستور goto در حلقه ها
دستور goto در حلقه ها، کار دستور break را می کند با این تفاوت که تارگت دستور break خط بعد از حلقه است ولی تارگت goto می تواند هر جایی که مشخص کردیم باشد:
for($i=0; $i < 5; $i++){ if( $i > 2 ) goto a; echo $i; } echo 5; a: echo 6;