Blah: et break blah;
pontarose
Messages postés
151
Statut
Membre
-
pontarose Messages postés 151 Statut Membre -
pontarose Messages postés 151 Statut Membre -
Bonjour,
Il me semble que les ":" de blah (blah:)
En effet, quand je lance le script ci-dessus, j'obtient le message suivant
Parse error: syntax error, unexpected ':' in /home/xxx/xxx/test.php on line 7
Quelle est la bonne syntaxe? j'utilise php 5
<?php
for ($i = 0; $i < 9; $i++)
{
if (true) {
break blah;
}
echo "not shown";
blah:
echo "iteration $i\n";
}
?>
Il me semble que les ":" de blah (blah:)
En effet, quand je lance le script ci-dessus, j'obtient le message suivant
Parse error: syntax error, unexpected ':' in /home/xxx/xxx/test.php on line 7
Quelle est la bonne syntaxe? j'utilise php 5
<?php
for ($i = 0; $i < 9; $i++)
{
if (true) {
break blah;
}
echo "not shown";
blah:
echo "iteration $i\n";
}
?>
3 réponses
Bonjour.
En php, on n'utilise pas d'étiquette.
Le break sort de la boucle - éventuellement de plusieurs boucles, et c'est tout.
En php, on n'utilise pas d'étiquette.
Le break sort de la boucle - éventuellement de plusieurs boucles, et c'est tout.
Merci de ta réponse, j'ai depuis lu pas mal de chose et non apparement il n'existe pas d'équivalent de "GOTO LABEL" en php
Voiçi ce que j'aurais aimé faire:
Si condition 1 OK -> Aller au for
Si condition 1 NON OK -> ELSE
blah:
for($i=0;$i<strlen();$i++)
{
if (condition 1 réalisée}
{
Liste d'instructions
break blah;
}
else
{
autre instruction
}
On dit que si
"Si tu as besoin d'un goto c'et que tu as un soucis dans ton algorithme"
comment m'être mes instructions dans une fonction?
}
Voiçi ce que j'aurais aimé faire:
Si condition 1 OK -> Aller au for
Si condition 1 NON OK -> ELSE
blah:
for($i=0;$i<strlen();$i++)
{
if (condition 1 réalisée}
{
Liste d'instructions
break blah;
}
else
{
autre instruction
}
On dit que si
"Si tu as besoin d'un goto c'et que tu as un soucis dans ton algorithme"
comment m'être mes instructions dans une fonction?
}
Est-ce que tu as un algorithme, parce que là je ne comprends pas tout ?
L'instruction IF...ELSE est exclusive. C'est à dire que :
SI Condition ALORS instructions1
SINON instructions2
Du coup, si ce que tu veux, c'est dans ta boucle FOR, éxécuter une action SI la condition1 n'est pas réalisée, il suffit de la tester :
Et si tu veux sortir de ta boucle SI tu as condition1, un BREAK te permet d'en sortir, et de passer à la suite.
L'instruction IF...ELSE est exclusive. C'est à dire que :
SI Condition ALORS instructions1
SINON instructions2
Du coup, si ce que tu veux, c'est dans ta boucle FOR, éxécuter une action SI la condition1 n'est pas réalisée, il suffit de la tester :
FOR (...) {
// SI (NON condition1)
IF (! condition1) {
instructions
}
}
Et si tu veux sortir de ta boucle SI tu as condition1, un BREAK te permet d'en sortir, et de passer à la suite.
Bonjour,
for ($s=0;$s<count($new);$s++)
{
blah:
for ($i=0;$i<strlen($new[$s][1])-7;$i++)
{
$windows_end="".substr($new[$s][1],$i,1)."".substr($new[$s][1],$i+1,1)."".substr($new[$s][1],$i+2,1)."".substr($primers_new[$s][1],$i+3,1)."";
if($windows_end==$end3)
{
//si je suis dans ce cas,je veux revenir au niveau de la 2ième boucle for avec ($new[$s][1]=x et $end3=y)
$new[$s][1]=x;
$end3=y;
break blah;
}
else
{
//print("$windows_end_forward ($i) diff $end3_forward_last_subunit<br>");
}
}
}
Je veux en fait, sortir de ma boucle (n°2)et refaire ma boucle avec de nouvelle valeur de$new[$s][1] et de $end3
for ($s=0;$s<count($new);$s++)
{
blah:
for ($i=0;$i<strlen($new[$s][1])-7;$i++)
{
$windows_end="".substr($new[$s][1],$i,1)."".substr($new[$s][1],$i+1,1)."".substr($new[$s][1],$i+2,1)."".substr($primers_new[$s][1],$i+3,1)."";
if($windows_end==$end3)
{
//si je suis dans ce cas,je veux revenir au niveau de la 2ième boucle for avec ($new[$s][1]=x et $end3=y)
$new[$s][1]=x;
$end3=y;
break blah;
}
else
{
//print("$windows_end_forward ($i) diff $end3_forward_last_subunit<br>");
}
}
}
Je veux en fait, sortir de ma boucle (n°2)et refaire ma boucle avec de nouvelle valeur de$new[$s][1] et de $end3
Je ne comprend pas pourquoi cet exemple est donné: http://www.developertutorials.com/blog/php/goto-is-coming-to-php-14/
Peut-on faire un GOTO en php alors?