break; / continue;

Asteria

Mitglied
Hallo Halli :-/

Ich scheitere leider schon wieder...
Folgender Code:
Code:
while( $turn < $endit )
{
 if( $arc_all1 == 0 )
 {
   if( $step_cav2 == 1 )
   {
     $turn++ ;
     continue 2 ;
   }
 }
}


Ergebnis ist Folgendes:
Code:
<b>Fatal error</b>:  Cannot break/continue 2 levels in <b>C:\bin\localhost\htdocs\script_actions\calc_schlacht\attack_calc_schlacht.php</b> on line <b>10</b>

Nun hatte ich angenommen, dass er das "if" nicht als eigene Ebene zählt
und hab es nur mit continue; probiert.. danach mit continue 3; beides führte
zu dem selben Fehler natürlich mit anderer Zahl vor "levels"..
Wie also kriege ich es hin, dass er wieder zum Anfang der while-Schleife springt?

Beste Grüße
Simon
 
Hi

vllt.kommt die Fehlermeldung ja eben deswegen, weil if kein Level ist?
Nur ein Level da, du willst aber zwei continuen?
 
Code:
continue wirkt sich nicht auf if sondern nur auf Schleifen-Konstrukte wie for, foreach, while, do-while aus.

Gut. Soweit so dann.
..aber wie gesagt ich habs auch mit nur "continue ;" versucht,
ohne die 2 dahinter. Das ergab dann diese Meldung:

Code:
<b>Fatal error</b>:  Cannot break/continue 1 level in <b>C:\bin\localhost\htdocs\script_actions\calc_schlacht\attack_calc_schlacht.php</b> on line <b>10</b>

Und eine while-Schleife ist eindeutig da.. :/
...und es liegt auch nicht an der Bedingung.. wenn ich $turn++ ; entferne
und nur continue; setze kommt leider die selbe Meldeng :(
 
Ok. Andere Lösung.
Für Java hab ich einen netten Editor: eclipse,
der kann Schrittweise einen Script ausführen,
so dass man parallel Variablenwerte und Schleifenstationen
sehr gut verfolgen kann..

..sowas gibt's doch bestimmt auch für php oder?
Hat jemand vllt n Namen für mich? :)
Besten Dank schonmal !
 
Ok. Fehler mit dem continue; habe ich gefunden.
Hatte einen include() mit drinnen und scheinbar,
kann er aus dem include() heraus nicht zur while-Schleife zurück.

Die Sache mit dem Debugger war übrigens auch super.
Hab' alles installiert.. allerdings hab' ich dazu gleich 'ne neue Frage.
Unzwar: wenn ich eine Datei durch den Debugger schicke,
hat die einige Variablen übernommen aus Cookies oder der Session
oder sie selbst ist eigentlich ein include().. und der Debugger
beschwert sich dementsprechend gleich, dass die Variablen nciht existieren.

Wie also kann ich ihm die Variablen samt Werte vorgeben ?!
Beste Grüße und danke nochmals !
 
Hatte einen include() mit drinnen und scheinbar,
kann er aus dem include() heraus nicht zur while-Schleife zurück.

Toll, und da hätten wir genau wie drauf kommen sollen? Wenn du uns nur den halben Code präsentierst, und (vielleicht auch zunächst unwichtige) Teil einfach weglässt, kann dir niemand eine kompente Antwort geben.

Wie also kann ich ihm die Variablen samt Werte vorgeben ?!

Die Sache ist ganz einfach. Man nennt es Vorinitialisierung von Variablen. Es funktioniert sehr zuverlässig. Man schreibt das PHP-Script einfach eine Variable, die man vom Debugger hin untersuchen will und weißt ihr den Wert zu, den man gern sehen möchte.

Aber was soll das bringen? Um welche Variablen gehts denn überhaupt (genau!)?
 
Zurück