परिचय
गोटो स्टेटमेंट का उपयोग प्रोग्राम के फ्लो को कोड में एक निश्चित स्थान पर भेजने के लिए किया जाता है। स्थान एक उपयोगकर्ता परिभाषित लेबल द्वारा निर्दिष्ट किया गया है। आम तौर पर, गोटो स्टेटमेंट स्क्रिप्ट में सशर्त अभिव्यक्ति के एक भाग के रूप में आता है जैसे कि, और या केस (स्विच निर्माण में)
सिंटैक्स
statement1; statement2; if (expression) goto label1; statement3; label1: statement4;
स्टेटमेंट 2 के बाद, यदि एक्सप्रेशन (यदि स्टेटमेंट के एक भाग के रूप में) सत्य है, तो प्रोग्राम फ्लो को लेबल1 पर निर्देशित किया जाता है। . यदि यह सत्य नहीं है, तो कथन 3 निष्पादित हो जाएगा। कार्यक्रम बाद में सामान्य प्रवाह में जारी रहता है।
निम्नलिखित उदाहरण में, यदि उपयोगकर्ता द्वारा संख्या इनपुट सम है, तो प्रोग्राम निर्दिष्ट लेबल पर कूद जाता है
उदाहरण
<?php $x=(int)readline("enter a number"); if ($x%2==0) goto abc; echo "x is an odd number"; return; abc: echo "x is an even number"; ?>
आउटपुट
यह निम्नलिखित परिणाम देगा -
x is an even number
गोटो कीवर्ड के सामने का लेबल वर्तमान स्टेटमेंट के पहले या बाद में दिखाई दे सकता है। यदि गोटो स्टेटमेंट में लेबल पहले के स्टेटमेंट की पहचान करता है, तो यह एक लूप बनता है।
मूर्खतापूर्ण उदाहरण गोटो स्टेटमेंट के साथ निर्मित लूप दिखाता है
उदाहरण
<?php $x=0; start: $x++; echo "x=$x\n"; if ($x<5) goto start; ?>
आउटपुट
यह निम्नलिखित परिणाम देगा -
x=1 x=2 x=3 x=4 x=5
गोटो का उपयोग करके, प्रोग्राम नियंत्रण किसी भी नामित स्थान पर जा सकता है। हालांकि, लूप के बीच में कूदने की अनुमति नहीं है।
उदाहरण
<?php for ($x=1; $x<=5; $x++){ if (x==3) goto inloop; for ($y=1;$y<=5; $y++){ inloop: echo "x=$x y=$y\n"; } } ?>
आउटपुट
यह निम्नलिखित परिणाम देगा -
PHP Fatal error: 'goto' into loop or switch statement is disallowed in line 5