Humpty Posted December 3, 2008 Share Posted December 3, 2008 G'day Guys, I am sure that the it is my lack of knowledge that got me and not understanding fully loops. My issue is getting a "Fatal error: Cannot break/continue 0 levels in..." message inside of a loop. The conintue; command happens inside of an IF THEN trying to continue a WHILE, however that WHILE is inside another WHILE...I believe this is where my problem may be. Below is a sample of what I am doing with LOTS of code stripped out so you can see the basics. $ezPhoneRun = 0; $ezPhoneCount = 100; // this value varies. while ($ezPhoneRun < $ezPhoneCount) { $ezAPCSCCounter = 0; $ezAPCSCDRCount = 1; //I have just added this here for your sake, the real value is a varied. while ($ezAPCSCCounter < $ezAPCSCDRCount) { if ($AAA != $BBB){ // do some code stuffs, loop $ezAPCSCCounter++; continue 0; } $ezAPCSCCounter++; } // END while ($ezAPCSCCounter < $ezAPCSCDRCount) { $ezPhoneRun++; } // end loop for isp's phone table loop I have placed in some obvious things just so that you know that they are happening, $AAA and $BBB aren't important, but that is to point out that I am entering that IF THEN when the problem occurs. Thanks in advance Quote Link to comment https://forums.phpfreaks.com/topic/135284-the-nightmare-while-with-fatal-error-cannot-breakcontinue-1-levels-in/ Share on other sites More sharing options...
corbin Posted December 3, 2008 Share Posted December 3, 2008 "The nightmare WHILE with Fatal error: Cannot break/continue 1 levels in..." I've never heard of anyone with this problem, so I don't know if I would call it a nightmare, but I guess it is to you. Anyway, you can't continue 0 levels. That doesn't make sense. Quote Link to comment https://forums.phpfreaks.com/topic/135284-the-nightmare-while-with-fatal-error-cannot-breakcontinue-1-levels-in/#findComment-704662 Share on other sites More sharing options...
Humpty Posted December 3, 2008 Author Share Posted December 3, 2008 ...don't know if I would call it a nightmare, but I guess it is to you. yeah only becuase I can't work it out Anyway, you can't continue 0 levels. That doesn't make sense. I was going to mention in the original post that I have tried using break; continue 0; continue 1; continue 2; ...all instead of continue; but the same issue. What I do not understand is the concept of 'level'. If it refers to the looping structures (loop inside loop) or the itteration of the current loop. Could you please shed some light on that so as I can understand what is happening / causing the error. The other thought is that I am makeing $ezAPCSCCounter = $ezAPCSCDRCount. but as such I would expect it to goto the begining of the loop and then decide that there is no need to loop again. Quote Link to comment https://forums.phpfreaks.com/topic/135284-the-nightmare-while-with-fatal-error-cannot-breakcontinue-1-levels-in/#findComment-704671 Share on other sites More sharing options...
sasa Posted December 3, 2008 Share Posted December 3, 2008 the error means that you call continue outside of any loop Quote Link to comment https://forums.phpfreaks.com/topic/135284-the-nightmare-while-with-fatal-error-cannot-breakcontinue-1-levels-in/#findComment-704715 Share on other sites More sharing options...
Humpty Posted December 3, 2008 Author Share Posted December 3, 2008 the error means that you call continue outside of any loop But as you see I am inside the loop, 2 of them in fact. Quote Link to comment https://forums.phpfreaks.com/topic/135284-the-nightmare-while-with-fatal-error-cannot-breakcontinue-1-levels-in/#findComment-704721 Share on other sites More sharing options...
redarrow Posted December 3, 2008 Share Posted December 3, 2008 Read this mate.... http://uk2.php.net/continue Quote Link to comment https://forums.phpfreaks.com/topic/135284-the-nightmare-while-with-fatal-error-cannot-breakcontinue-1-levels-in/#findComment-704736 Share on other sites More sharing options...
redarrow Posted December 3, 2008 Share Posted December 3, 2008 here a little game, u got 3 chances to guess the number ... we used the continue in a loop to hold the correct numbers........... <?php //GUESS THE NUMBER GAME 3 CHANCES. $your_number1=89; $your_number2=55; $your_number3=60; //WINNING NUMBER $winning_number=70; $go=1; $stop=100; for($i=$go; $i<$stop; $i++){ if($i==$your_number1){ $your_number1=$i; continue; } } for($i=$go; $i<$stop; $i++){ if($i==$your_number2){ $your_number2=$i; continue; } } for($i=$go; $i<$stop; $i++){ if($i==$your_number3){ $your_number3=$i; continue; } } if( ($your_number1 == $winning_number) || ($your_number2==$winning_number) || ($your_number3==$winning_number)){ echo "DAM YOU WON!"; }else{ echo "YOU LOSS!"; } ?> Quote Link to comment https://forums.phpfreaks.com/topic/135284-the-nightmare-while-with-fatal-error-cannot-breakcontinue-1-levels-in/#findComment-704750 Share on other sites More sharing options...
sasa Posted December 3, 2008 Share Posted December 3, 2008 i try you code on my local wamp, and it's work OK <?php $AAA = 'a'; $BBB = 'b'; $ezPhoneRun = 0; $ezPhoneCount = 100; // this value varies. while ($ezPhoneRun < $ezPhoneCount) { $ezAPCSCCounter = 0; $ezAPCSCDRCount = 1; //I have just added this here for your sake, the real value is a varied. while ($ezAPCSCCounter < $ezAPCSCDRCount) { if ($AAA != $BBB){ // do some code stuffs, loop $ezAPCSCCounter++; continue 0; } $ezAPCSCCounter++; } // END while ($ezAPCSCCounter < $ezAPCSCDRCount) { $ezPhoneRun++; } // end loop for isp's phone table loop ?> (just setup variables $AAA and $BBB) Quote Link to comment https://forums.phpfreaks.com/topic/135284-the-nightmare-while-with-fatal-error-cannot-breakcontinue-1-levels-in/#findComment-704802 Share on other sites More sharing options...
Humpty Posted December 4, 2008 Author Share Posted December 4, 2008 (just setup variables $AAA and $BBB) Yeah those 2 variables are set in the real code, I just use those 2 A and B to indicate that they were not a match for purposes of showing cut down code so what else could cause it to produce this error? please keep in mind that in orginial code i had continue; but have tried break, continue 0, continue 1, and continue 2.....all of which not worked. Quote Link to comment https://forums.phpfreaks.com/topic/135284-the-nightmare-while-with-fatal-error-cannot-breakcontinue-1-levels-in/#findComment-705579 Share on other sites More sharing options...
premiso Posted December 4, 2008 Share Posted December 4, 2008 <?php $AAA = 'a'; $BBB = 'b'; $ezPhoneRun = 0; $ezPhoneCount = 100; // this value varies. while ($ezPhoneRun < $ezPhoneCount) { $ezAPCSCCounter = 0; $ezAPCSCDRCount = 1; //I have just added this here for your sake, the real value is a varied. while ($ezAPCSCCounter < $ezAPCSCDRCount) { if ($AAA == $BBB){ // do some code stuffs, loop $ezAPCSCCounter++; echo 'here1'; continue 0; }else { $AAA = 'b'; $string = ""; } $ezAPCSCCounter++; } // END while ($ezAPCSCCounter < $ezAPCSCDRCount) { echo 'end'; $ezPhoneRun++; } // end loop for isp's phone table loop ?> I did that for test reasons, but that returned the right results. Maybe your code is flawed in some way...mind posting the actual code? Quote Link to comment https://forums.phpfreaks.com/topic/135284-the-nightmare-while-with-fatal-error-cannot-breakcontinue-1-levels-in/#findComment-705666 Share on other sites More sharing options...
Humpty Posted December 4, 2008 Author Share Posted December 4, 2008 Maybe your code is flawed in some way...mind posting the actual code? Indeed it was. I don't understand why though. It all revolves around an include. I have put the info below as to what I did and a tad more clarification on the code (ommitted because I didn't think it would matter.) It would still be nice to know why this happened but none-the-less I have rectified it and will look at includes next time. Firstly thanks heaps to all those who helped: premiso Humpty sasa redarrow corbin I appreciate it. This is what was happening (including the includes) (start file 1) START Loop1 include file2 (start file 2) START Loop 2 include file 3 (start file 3) if (condition){ continue; (this is where the error occured) } (end file 3) END Loop 2 (end file 2) END Loop1 (end file 1) The only change I made was to take the code in file 3 and put it inside file 2 (instead of the include command (which by the way was working, else we wouldn't have even reached that point of code where things errored). This is what I ended up with (start file 1) START Loop1 include file2 (start file 2) START Loop 2 // this is where we USED TO include file 3 // this used to be start of file 3 if (condition){ continue; (this is where the error occured) } // this used to be end of file 3 END Loop 2 (end file 2) END Loop1 (end file 1) I really hope that this example can help someone else if need be, and I hope that anyone reading it can understand what is happening, which is why I didn't use code other than the if...then, so that people can see this issue out of context perhaps helping them put it into context for themselves. I am also leaving this open for a little while to give the opportunity for someone to mention how / why this would have happened and been fixed....it will help me (and or you) prevent this in the future. I will mark as solved shortly. THANKS HEAPS Quote Link to comment https://forums.phpfreaks.com/topic/135284-the-nightmare-while-with-fatal-error-cannot-breakcontinue-1-levels-in/#findComment-705675 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.