Computer >> Máy Tính >  >> Lập trình >> PHP

Tuyên bố goto PHP

Giới thiệu

goto câu lệnh được sử dụng để gửi luồng chương trình đến một vị trí nhất định trong mã. Vị trí được chỉ định bởi một nhãn do người dùng xác định. Nói chung, câu lệnh goto xuất hiện trong tập lệnh như một phần của biểu thức điều kiện, chẳng hạn như if, else hoặc case (trong cấu trúc switch)

Cú pháp

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

Sau câu lệnh2, biểu thức if (như một phần của câu lệnh if) là true, luồng chương trình được chuyển hướng đến label1 . Nếu nó không đúng, statement3 sẽ được thực thi. Chương trình tiếp tục theo quy trình bình thường sau đó.

Trong ví dụ sau, Nếu đầu vào số của người dùng là số chẵn, chương trình sẽ nhảy đến nhãn được chỉ định

Ví dụ

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

Đầu ra

Điều này sẽ tạo ra kết quả sau -

x is an even number

Nhãn phía trước từ khóa goto có thể xuất hiện trước hoặc sau câu lệnh hiện tại. Nếu nhãn trong câu lệnh goto xác định một câu lệnh trước đó, nó tạo thành một vòng lặp.

Ví dụ đánh lừa cho thấy một vòng lặp được xây dựng bằng câu lệnh goto

Ví dụ

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

Đầu ra

Điều này sẽ tạo ra kết quả sau -

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

Sử dụng goto, điều khiển chương trình có thể chuyển đến bất kỳ vị trí nào được đặt tên. Tuy nhiên, không được phép nhảy ở giữa vòng lặp.

Ví dụ

<?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";
   }
}
?>

Đầu ra

Điều này sẽ tạo ra kết quả sau -

PHP Fatal error: 'goto' into loop or switch statement is disallowed in line 5