2017-10-21 103 views
-1

Voici mon code php donné ci-dessous lorsque je le lance dans mon navigateur son affichage 1 en continu. Ma question est pourquoi son spectacle comme ça? Après l'exécution, il affiche une erreur fatale: le temps d'exécution maximal est dépassé. Qu'est-ce que c'est?Pourquoi la sortie de boucle for est en permanence 1 en php?

<?php 
     for ($i=1; $i<=5; $i+1) { 
      echo $i." "; 
     } 
    ?> 

Donnez-moi une bonne réponse. Assurez-vous que quel est le temps d'exécution du code php? TIA

+0

Est-ce que '$ i + 1' est une construction juridique dans la langue? La plupart des interprètes impriment juste des ordures pour ce code. – jdv

+0

C'est une erreur stupide.jetez simplement un coup d'oeil aux réponses ci-dessous, mais pour répondre au dernier point, c'est à vous de décider quel est le délai que vous avez choisi. Vous pouvez définir l'heure d'exécution du script comme suit: ini_set ('max_execution_time', 300); – Shan

+0

utilise 'pour ($ i = 1; $ i <= 5; $ i ++)' – Jeffrey

Répondre

0

Modifier votre code à

<?php 
for ($i=1; $i<=5; $i++) { 
echo $i." "; 
} 
?> 

parce que vous devez d'abord définir la valeur pour i

0

$ utilisation $i++ pas $i+1, $i++ is $i=$i+1

2

$i+1 n'augmente pas la valeur de $i. Il ajoute seulement 1 à ce qui est dans $i mais il ne l'attribue pas à $i. Votre boucle fait ceci:

$i = 1 
while ($i<=5) { 
    echo $i." "; 

    $i+1; 
} 

$i+1 sur son propre ne fait rien.

Vous avez besoin de quelque chose comme $i = $i + 1. Ou pour abréger $i += 1. Ou encore plus court et mieux: $i++.

for ($i=1; $i<=5; $i++) { 
    echo $i . " "; 
} 
0

Vous devez faire

<?php 
    for($i = 1; $i <= 5; $i++) { 
     echo $i." "; 
    } 
?> 

Maintenant, vous venez de dire 1 + 1 mais vous ne donnez pas à quoi que ce soit. Vous pouvez utiliser $i = $i + 1 mais c'est la même chose que $i++

-1

Vous avez un problème lors de l'impression de la ligne. Il devrait ressembler à

<?php 
    for ($i=1; $i<=5; $i++) { 
    echo $i; 
    } 
?> 
0
<?php 
    for ($i=1; $i<=5; $i++) { 
     echo $i." "; 
    } 
?> 
0

dans une boucle, chaque tour, vous devez augmenter la valeur de $ i. mais vous avez oublié d'augmenter la valeur de $ i. Vous avez écrit $ i +1 mais il faut lui assigner une nouvelle valeur de $ i.

En bref, vous devez changer i + 1 $ à $ i = $ i + 1 ou $ i ++

le bon code:

<?php 
for ($i=1; $i<=5; $i = $i+1) { 
echo $i." "; 
} 
?> 
1

Il est à cause de $ i + 1 dans la boucle. C'est fondamentalement une expression et cela produit un résultat mais vous n'attribuez jamais ce résultat à $ i. Par conséquent, vous préférez faire quelque chose comme $ i = $ i + 1 ou, dans la vraie vie, utilisez incrementation $ i ++. Ainsi, la volonté de code final ressemble à:

for ($i = 1; $i <= 5; $i++) { 
    echo $i." "; 
} 
0

Vous ne changez pas la valeur de $i dans la boucle. Soit $i =$i +1 ou $i++ au lieu de $i + 1 fera l'affaire.