|
|
|
| Есть ли в PHP отператор goto? | |
|
|
|
|
|
|
|
для: Евгений Петров
(22.06.2005 в 13:37)
| | Ключевое слово GOTO является зарезервированным, но сам оператор не реализован.
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=979 | |
|
|
|
|
|
|
|
для: Евгений Петров
(22.06.2005 в 13:37)
| | Помоему нет. Что-то подобное - break - но это только команда "стоп". Если выполняется цикл и стоит специальное условие, то с помощью этой команды происходит выход из цыкла. А вот насчет перехода - я такого не встречал. | |
|
|
|
|
|
|
|
для: Jackson
(22.06.2005 в 13:53)
| | Мне не надо из цикла выходить, мне надо "перескочить" через пару операторов вниз. | |
|
|
|
|
|
|
|
для: Евгений Петров
(22.06.2005 в 13:56)
| | Из цикла выйти можно при помощи ключевого слова break
<?php
$flag = false;
for()
{
if(что-то)
{
$flag = true;
break;
}
}
if(!$flag)
{
// Операторы которые нужно пропустить
}
?>
|
А для пропуска использовать флаг. | |
|
|
|
|
|
|
|
для: cheops
(22.06.2005 в 14:03)
| | Я по другому выкрутился, у меня там switch был. По идее если бы код писался на С++, то он бы выглядел так:
<?
switch($status)
{
case "register":
{
// код
} break;
case "authorize":
{
if(/*условие*/ != 0)
// код 1
else goto label;
if(/*условие*/ != 0)
{
// код 2
}
else
{
label:
// код 3
} break;
}
?>
|
(я тут скобки операторные от PHP добавил, чтобы синтаксис подсвечивался :) )
А я сделал так:
<?
switch($status)
{
case "register":
{
// код
} break;
case "authorize":
{
if(/*условие*/ != 0)
{
// код 1
if(/*условие*/ != 0)
{
// код 2
break;
}
}
// код3
} break;
}
?>
|
Помоему даже короче получилось. | |
|
|
|