Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Fatal error: 'continue' operator with non-constant operand is no longer supported
Fatal error: 'continue' operator with non-constant operand is no longer supported in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\func.php on line 5
В чем может быть проблема? У меня установлен PHP 5.4.7
Заранее всем спасибо.
armancho7777777
Отправлено: 19 Октября, 2012 - 22:35:40
Активный участник
Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011 Откуда: Москва
Помог: 221 раз(а)
Нет символа ";" после continue (Добавление)
jovani пишет:
результат данного выражения должно быть
2
Должно быть всё, кроме 2
jovani
Отправлено: 19 Октября, 2012 - 22:37:42
Новичок
Покинул форум
Сообщений всего: 32
Дата рег-ции: Март 2012
Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010 Откуда: Украина, Запорожье
Помог: 62 раз(а)
armancho7777777, все правильно там. Это пример из мануала, во многих книгах его приводят, хоть и относится он к "как не нужно делать". Должно действительно выводить только 2. Выражение continue print "$i<br />"; считается как единое целое. Самое интересное, что до PHP 5.4 это нормально работает, выводит 2. А вот с версии 5.4 - Fatal error. Видимо разработчики решили, что в continue не может быть никаких выражений, только цифра. ИМХО, правильное решение.
Вот как-то так
----- Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
jovani
Отправлено: 19 Октября, 2012 - 22:48:15
Новичок
Покинул форум
Сообщений всего: 32
Дата рег-ции: Март 2012
Помог: 0 раз(а)
В мануале PHP есть именно такой пример. Когда у меня стоял PHP 5.2, то данный скрипт исполнялся без проблем. Но вот на PHP 5.4 данный скрипт выдает ошибку. Может в PHP 5.4 если какие-нибудь недоработки?
armancho7777777
Отправлено: 19 Октября, 2012 - 22:51:34
Активный участник
Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011 Откуда: Москва
Помог: 221 раз(а)
А может Вы переведёте текст ошибки в google - переводчике ?
OrmaJever
Отправлено: 19 Октября, 2012 - 22:53:58
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
В мануале PHP есть именно такой пример. Когда у меня стоял PHP 5.2, то данный скрипт исполнялся без проблем. Но вот на PHP 5.4 данный скрипт выдает ошибку. Может в PHP 5.4 если какие-нибудь недоработки?
Операторы break и continue теперь не принимают аргументов в виде переменной. Например, выражение break 1 + foo() * $bar; невозможно. Вы по-прежнему можете использовать явный аргумент в виде статической константы. Например, break 2;. Побочным эффектом этого изменения является то, что конструкции break 0; и continue 0; более недопустимы.
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
armancho7777777
Отправлено: 19 Октября, 2012 - 22:57:38
Активный участник
Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011 Откуда: Москва
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.