Probleme avec foreach [Résolu]

Signaler
Messages postés
16
Date d'inscription
samedi 7 février 2004
Statut
Membre
Dernière intervention
20 août 2005
-
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
-
Salut j'ai un code php qui est ceci:


<?
$a = array(10, 20, 30, 40,50,70,80,90);
$i = 0;
foreach ($a as $v) {
echo "$i:$v
";
$i++;
}
?>

Cela affiche:
0:10
1:20
2:30
3:40
4:50
5:70
6:80
7:90


Mon probleme c' est que je voudrais selectionner l'affichage, pour faire apparaitre par exemple ceci:
3:40
4:50
5:70


Je pense qu'il faut utiliser l'instruction for ou break mais je ne vois pas trop comment m'y prendre.
Merci de votre aide...
A voir également:

7 réponses

Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
5
Bonsoir!

on ne voit pas vraiment ce que tu veux faire exactement, donc il y a
plusieurs possibilités selon les cas... Là c'est sûr que comme le dit
Antho, il parait simple de rajouter une condition genre



if($v >= 40 and $v <= 70){ echo 'ce que je veux'; }



sinon, ce que tu fais avec $i peut être fait directement par la fonction foreach :

http://fr2.php.net/manual/fr/control-structures.foreach.php
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Salut,



<? => <?php





si tu veux sélectionner une valeur bah if($i===3 AND $v===50) //action



par exemple...

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
Messages postés
16
Date d'inscription
samedi 7 février 2004
Statut
Membre
Dernière intervention
20 août 2005

En fait je code pour un tableau ou les données se trouve dans un fichier texte.
Je voulais un code qui me permet de selectionner les valeurs de 40 à 70.


Le code que tu m'as envoyé 1319 Anthomicro est pas mal mais imagine que les valeurs de array sont nombreuses, je ne pas faire:
if($i ===3 AND $v===50 AND...AND...AND...)

Merci
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Bah dis-nous ce que tu veux faire ça ira plus vite :-)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
Messages postés
16
Date d'inscription
samedi 7 février 2004
Statut
Membre
Dernière intervention
20 août 2005

J'ai amélioré le code:
<?
$a = array(10, 20, 30, 40,50,70,80,90);
foreach ($a as $v) {
for($i=0; $i<6; $i++) {
echo "$i:$v
";
switch ($i) {
case 5:
break 2;
}
}
}
?>
le probleme c' est qu'il affiche en boucle;
0:10
1:10
2:10
3:10
4:10
5:10

moi je veux limité l'affichage au premier 5:10 en lui ajoutant break
Merci
Messages postés
16
Date d'inscription
samedi 7 février 2004
Statut
Membre
Dernière intervention
20 août 2005

oublié ce que je viens de posté avec for ca marche nickel
Merci beaucoup de votre aide
L'instruction AND était la solution
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Remplace <? par <?php

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>