Не могу разорвать цикл функцией
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Не могу разорвать цикл функцией - 2009-01-17 21:37:03.603333
|
|
|
azimzaim
Сообщений: 320
Оценки: 0
Присоединился: 2009-01-04 22:14:32.760000
|
Выдает Fatal error: Cannot break/continue 1 level В данной функции, которая находится в цикле while. А нужно разорвать цикл именно при помощи функции или весь скрипт переписывать. Что делать.
while(!isset($jasfjsdhfjhsjhfjshjdfhjs))
{function reload($income)
{$income=str_replace('<br>',"\n",$income);
echo "<SCRIPT language='javascript'>".
"alert('Ошибка: $income')</script>;".
"<SCRIPT language='javascript' > ".
"javascript:history.back(1)</script>".
"<noscript>Ошибка: $income</noscript>";
[b]break;[/b]}
//тра та та
}
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-17 21:53:26.410000
|
|
|
Pashkela
Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
|
Ну для начала функцию вынеси и пропиши отдельно, вне цикла, а потом вызывай в цикле, а то глаза сломаешь код читать. И скажи хоть, чо тебе надо в итоге ЗЫЖ Объявлять функции в цикле - вообще жесть.
<?php
Function write_on_monitor()
{echo "hello world\n";}
While ($i<5) {
write_on_monitor();
$i++;
}
?>
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-17 22:13:41.383333
|
|
|
koro
Сообщений: 977
Оценки: 0
Присоединился: 2008-08-08 09:39:07.460000
|
ты сам читал свой код, посмотри где у тебя функция стоит и где break . Т.е. функция ещё не описана, а ты уже прерываешь процесс её создания. Да и правильно тебе говорят, так обьявлять функцию в цикле не получится * если только менять с каждой иттерацией цикла имя функции ?
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-17 23:17:32.113333
|
|
|
azimzaim
Сообщений: 320
Оценки: 0
Присоединился: 2009-01-04 22:14:32.760000
|
Цикл одноитерационный. Фишка в том, что в средине скрипта стоит цикл, в конце которого стоит брейк. В случае ошибки функция reload должна прекратить выполнение того куска кода, который находится между скобками цикла, выполнив брейк досрочно, но не должна прирывать выполнения всего скрипта в целом, потому я не могу использовать эксит. Потому условие цикла такое нелепое: while(!isset($jasfjsdhfjhsjhfjshjdfhjs))
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-18 00:56:01.693333
|
|
|
koro
Сообщений: 977
Оценки: 0
Присоединился: 2008-08-08 09:39:07.460000
|
покури ман. ещё раз повторять свой предыдущий пост повторять не буду. ответ там.
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-18 05:33:06.216666
|
|
|
Панда
Сообщений: 232
Оценки: 0
Присоединился: 2008-03-05 07:38:35.890000
|
quote:
ORIGINAL: Masun Выдает Fatal error: Cannot break/continue 1 level В данной функции, которая находится в цикле while. А нужно разорвать цикл именно при помощи функции или весь скрипт переписывать. Что делать.
while(!isset($jasfjsdhfjhsjhfjshjdfhjs))
{function reload($income)
{$income=str_replace('<br>',"\n",$income);
echo "<SCRIPT language='javascript'>".
"alert('Ошибка: $income')</script>;".
"<SCRIPT language='javascript' > ".
"javascript:history.back(1)</script>".
"<noscript>Ошибка: $income</noscript>";
[b]break;[/b]}
//тра та та
}
это писец… переписый все.
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-18 06:09:23.153333
|
|
|
b[e]nd3p
Сообщений: 187
Оценки: 0
Присоединился: 2008-09-02 20:54:56.370000
|
И называй переменные нормально, а то хрен поймешь.
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-18 10:27:23.600000
|
|
|
azimzaim
Сообщений: 320
Оценки: 0
Присоединился: 2009-01-04 22:14:32.760000
|
я не понимаю, какая разница где инициализировать функцию? Главное, что бы это было сделано до того, как к ней обратятся. Вот более четкий пример: function reload($income) {$outcome=$income*$somevar; return $outcome; break;} while(!isset($jasfjsdhfjhsjhfjshjdfhjs)) {//bla bla bla if ($error) {reload("1"); } break;} Суть не в том, где я пропишу её или какие переменные и что она будет делать. Суть в том, что бы функция разорвала цыкл
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-18 13:03:38.190000
|
|
|
koro
Сообщений: 977
Оценки: 0
Присоединился: 2008-08-08 09:39:07.460000
|
суть в том что ты никогда ничего путного не напишешь, не дано видимо; function Funk($one) { return 0; } while(!isset($jasfjsdhfjhsjhfjshjdfhjs)) { $one=rand(0,2); if(!Funk($one)) break; else $outcome=$income*$somevar; }
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-18 13:38:01.720000
|
|
|
azimzaim
Сообщений: 320
Оценки: 0
Присоединился: 2009-01-04 22:14:32.760000
|
Так в том то и проблема, что данная функция должна вывести в качестве значения массив, потому я и не могу сделать, что бы она выводила 0, кроме того, если проверять, а не является функция нулем, как в вашем примере, тогда вообще какой смысл в этой функции? Короче наверно придется делать через инклуд, а не через функцию.
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-18 14:21:21.190000
|
|
|
koro
Сообщений: 977
Оценки: 0
Присоединился: 2008-08-08 09:39:07.460000
|
ты можешь нормально описать задачу? при чём здесь инклуд вообще?
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-18 14:23:56.880000
|
|
|
Cep}|{
Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
|
Дак ты при прерывании не ноль а массив выводи
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-18 14:27:29.580000
|
|
|
koro
Сообщений: 977
Оценки: 0
Присоединился: 2008-08-08 09:39:07.460000
|
quote:
ORIGINAL: Cep}|{ Дак ты при прерывании не ноль а массив выводи да у этой простейшей задачи есть множество решений, просто смысла их писать, он же не понимает нифига и не хочет понимать. он хочет думать, но не понимать
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-18 14:32:08.903333
|
|
|
Cep}|{
Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
|
да херней мается
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-18 14:39:56.836666
|
|
|
b[e]nd3p
Сообщений: 187
Оценки: 0
Присоединился: 2008-09-02 20:54:56.370000
|
ты из цикла вызвал функцию, потом она вернет значение обратно в цикл на вывод, потом снова ее вызов. Вот и зачем тебе ее внутри цикла описывать. Про это и говорят тебе.
|
|
|
RE: Не могу разорвать цикл функцией - 2009-01-18 14:59:25.126666
|
|
|
rtw
Сообщений: 1372
Оценки: 0
Присоединился: 2004-08-19 00:28:05
|
Это палата.
while(!isset($jasfjsdhfjhsjhfjshjdfhjs))
{function reload($income)
{$income=str_replace('<br>',"\n",$income);
echo "<SCRIPT language='jаvаsсript'>".
"alert('Ошибка: $income')</sсriрt>;".
"<SCRIPT language='jаvаsсript' > ".
"jаvаsсript:history.back(1)</sсriрt>".
"<nosсriрt>Ошибка: $income</nosсriрt>";
[b]break;[/b]}
//тра та та
}
|
|
|
|
|