Quelqu'un pourrait-il expliquer, avec des exemples, ce que l’on entend par boucle break 2
ou continue 2
en PHP? Qu'est-ce que cela signifie quand break
ou continue
est suivi d'un nombre?
Réponses
Trop de publicités?$array = array(1,2,3);
foreach ($array as $item){
if ($item == 2) {
break;
}
echo $item;
}
sorties "1" cause de la boucle a été brisé à jamais, avant l'écho a été en mesure d'imprimer "2".
$array = array(1,2,3);
foreach ($array as $item){
if ($item == 2) {
continue;
}
echo $item;
}
sorties 13
provoquer le deuxième itération a été adopté
$numbers = array(1,2,3);
$letters = array("A","B","C");
foreach ($numbers as $num){
foreach ($letters as $char){
if ($char == "C") {
break 2; // if this was break, o/p will be AB1AB2AB3
}
echo $char;
}
echo $num;
}
sorties AB
cause de la pause 2 - les deux états était cassé assez tôt. Si c'était la pause, la sortie sera AB1AB2AB3
.
$numbers = array(1,2,3);
$letters = array("A","B","C");
foreach ($numbers as $num){
foreach ($letters as $char){
if ($char == "C") {
continue 2;
}
echo $char;
}
echo $num;
}
sortie ABABAB
, à cause de continuer 2 - boucle externe sera transmise à chaque fois
en d'autres termes, continue
arrête l'itération en cours d'exécution, mais permet à un autre pour courir, alors que break
s'arrête intégralité de la déclaration jamais.
par conséquent, continue
est applicable pour les boucles que tout break
n'est pas
un certain nombre représente le nombre de imbriquée états concernés.
si il y a 2 boucles imbriquées, break
dans l'intérieur de la cassera intérieure (cependant, il se lance à nouveau dans la prochaine itération de la boucle externe). break 2
dans l'intérieur de la cassera les deux.
Le nombre indique simplement "combien d'étendues pour sortir de"
<?php
for($i = 0; $i < 10; ++$i) {
for($j = 0; $j < 10; ++$j) {
break 2;
}
}
$ i et $ j seront 0
Pour citer le manuel:
continue accepte un argument numérique facultatif lui indiquant le nombre de niveaux de boucles englobantes à ignorer jusqu'à la fin.
même chose pour la pause.
pause accepte une option argument numérique qui raconte combien imbriquée enfermant des ouvrages à éclaté de.
<?php
$arr = array('one', 'two', 'three', 'four', 'stop', 'five');
while (list(, $val) = each($arr)) {
if ($val == 'stop') {
break; /* You could also write 'break 1;' here. */
}
echo "$val<br />\n";
}
/* Using the optional argument. */
$i = 0;
while (++$i) {
switch ($i) {
case 5:
echo "At 5<br />\n";
break 1; /* Exit only the switch. */
case 10:
echo "At 10; quitting<br />\n";
break 2; /* Exit the switch and the while. */
default:
break;
}
}
?>
continuer accepte une option argument numérique qui lui indique le nombre de niveaux que de l'enfermer les boucles, il doit passer à la fin de l'. La valeur par défaut est 1, donc de sauter à la fin de la boucle de courant.
<?php
while (list($key, $value) = each($arr)) {
if (!($key % 2)) { // skip odd members
continue;
}
do_something_odd($value);
}
$i = 0;
while ($i++ < 5) {
echo "Outer<br />\n";
while (1) {
echo "Middle<br />\n";
while (1) {
echo "Inner<br />\n";
continue 3;
}
echo "This never gets output.<br />\n";
}
echo "Neither does this.<br />\n";
}
?>
pause : mettre fin à l'intérieure de la boucle (sortie de la boucle)
pause 2 : casser les 2 niveau d'imbrication des boucles (sortie de 2 boucles imbriquées)
continuer : la force de la boucle pour la prochaine itération de l'endroit où il est utilisé sans l'exécution reste de la boucle de code
continuer 2: la force de la boucle pour les 2 prochaines itération de l'endroit où il est utilisé sans l'exécution reste de la boucle de code
sortir de la boucle lorsque nous rencontrons $array
de la valeur de la 5
break
$array(4,5,8);
for ($i=0 ;$i < 10 $i ++)
{
if ($array[$i]==5)
{
break;
}
}
la rupture (n)
Exit les deux boucles lorsque nous rencontrons la valeur 5 dans $array;
for ($i=0 ;$i < 10 $i ++)
{
for($j=0; $j <10; $j++)
{
if ($array[$i][$j]==5)
{
break 2;
}
}
}
continuer
Affiche le message lorsque la valeur est de 5;
for($i=0; $i<10; $i++)
{
if ($array[$i] != 5)
{
continue;// will reach at the first line from here which is for($i=0;.....
}
echo 'This is five';
}
}