(PHP 5 >= 5.3.0)
O operador goto pode ser usado para ir diretamente para outro stor do programa. O ponto de destino é definido por um 'label' seguido de dois pontos, e a instrução é usada como goto seguida do 'label' desejado. O uso do goto não é completamente irrestrito. O 'label'de destino deve estar no mesmo arquivo e contexto, significando que você não pode pular para fora de uma função ou método, nem para dentro de um. Você também não pode saltar para dentro de um loop ou switch. Você pode saltar para fora deles, e um uso comum é usar o gotono lugar de um break multi-nivel.
Exemplo #1 Exemplo de goto
<?php
goto a;
echo 'Foo';
a:
echo 'Bar';
?>
O exemplo acima irá imprimir:
Bar
Exemplo #2 Exemplo de goto com loop
<?php
for($i=0,$j=50; $i<100; $i++) {
while($j--) {
if($j==17) goto end;
}
}
echo "i = $i";
end:
echo 'j hit 17';
?>
O exemplo acima irá imprimir:
j hit 17
Exemplo #3 Isto não irá funcionar
<?php
goto loop;
for($i=0,$j=50; $i<100; $i++) {
while($j--) {
loop:
}
}
echo "$i = $i";
?>
O exemplo acima irá imprimir:
Fatal error: 'goto' into loop or switch statement is disallowed in script on line 2
Nota:
O operador goto está disponível desde o PHP 5.3.