Computer >> 컴퓨터 >  >> 프로그램 작성 >> PHP

PHP goto 문

<시간/>

소개

이동 문은 프로그램의 흐름을 코드의 특정 위치로 보내는 데 사용됩니다. 위치는 사용자 정의 레이블로 지정됩니다. 일반적으로 goto 문은 if, else 또는 case(switch 구문에서)와 같은 조건식의 일부로 스크립트에 나타납니다.

구문

statement1;
statement2;
if (expression)
   goto label1;
statement3;
label1: statement4;

statement2 이후에 if 문의 일부로 표현식이 참이면 프로그램 흐름이 label1으로 이동합니다. . true가 아니면 statement3이 실행됩니다. 이후 프로그램은 정상적인 흐름으로 계속됩니다.

다음 예에서 사용자가 입력한 숫자가 짝수이면 프로그램은 지정된 레이블로 점프합니다.

예시

<?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

goto 키워드 앞의 레이블은 현재 명령문 앞이나 뒤에 나타날 수 있습니다. goto 문의 레이블이 이전 문을 식별하는 경우 루프를 구성합니다.

다음 예는 goto 문으로 구성된 루프를 보여줍니다.

예시

<?php
$x=0;
start:
$x++;
echo "x=$x\n";
if ($x<5)
   goto start;
?>

출력

이것은 다음 결과를 생성합니다 -

x=1
x=2
x=3
x=4
x=5

goto를 사용하여 프로그램 제어는 명명된 위치로 이동할 수 있습니다. 단, 루프 중간에 점프하는 것은 허용되지 않습니다.

예시

<?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