A voir également:
- Récupération de valeur - foreach - php
- Easy php - Télécharger - Divers Web & Internet
- Récupération de compte google - Guide
- Convertisseur récupération de texte - Guide
- Logiciel gratuit calcul valeur nutritionnelle - Télécharger - Santé & Bien-être
- Le serveur de récupération n'a pas pu être contacté - Forum MacOS
2 réponses
Salut,
votre référence ultime en PHP:
http://php.net/manual/fr/control-structures.foreach.php
---> si tu ne connais pas, si tu cherches comment tout est là dedans le manuel tu devra apprendre à utiliser.
foreach comme moult instructions en programmation vient de l'anglais: for each et se traduirais par "pour chaque".
foreach c'est plus qu'une instruction et c'est une boucle logique.
Il en existe plusieurs et ce sont des éléments cruciaux de la logique et de l'algorithmie. Boucles conditionnelle, ils(ces éléments logique comme dans la logique mathématique et binaire de Booles, prêtez pas attention à cette parenthéses si les math de Booles vous dise rien) sont aussi appelés tests logique même s'il y a une petite différence entre les 2.
Une boucle conditionnelle est composé d'un (au moins) test logique.
Le logique c'est simple, celle là en tout cas. Elle est à la portée des grosses calculettes que nous appelons ordinateur qui utilisent un système binaire de notation/mémorisation.
Revenons à votre code(que j'ai indenté un peu plus pour bien différencier chaque élément de la structure du langage) avant que je vous perde nous allons repérer le test et la boucle:
<?php
foreach ($ligne as $num => $element)
/*******POUR CHAQUE **********
******** VALEUR DU TABLEAU $ligne ***************
*********le tableau est donc parcouru de sa première à dernière valeur****
********* as(en anglais tel que) $num**************
**********ON RETIENT LA VALEUR DANS LA VARIABLE $num
************* =>$element**********************
***avec comme pointeur(le compteur du tableau, aussi appelé clé) $element**
*/
/*---------------------Voilà la première partie de notre boucle---------*/
/*---------------------la 1ere partie va indiquer les conditions de cette boucle:--*/
/*---la condition(et le nombre de tours de boucle) correspond ici à ce que chaque valeur du tableau soit parcourues---------------*/
/*----------------Il y aura donc 15 tours de boucle, 3 si notre tableau avait 3 valeurs, 17380 tours de boucle s'il y a 17380 valeurs dans notre tableau---*/
/*--------------------Donc la première partie du foreach donne la condition correspondant au nombre de répétitions(valeurs retenus dans le tableau) des instructions qui seront situées entre les accolades----------*/
{ ?>
/*----entre les accolades il y aura donc pour chaque tour de boucle: --*/
<option value="<?php echo $num; ?>"><?php echo $num; ?></option>
/*--- l'affichage d'une item de liste déroulante ayant la valeur $num(donc la valeur retenue dans le tableau pour chaque tour en value et entre les 2 balises <option>----*/
/* on ferme l'accolade---*/
<?php
}
?>
votre référence ultime en PHP:
http://php.net/manual/fr/control-structures.foreach.php
---> si tu ne connais pas, si tu cherches comment tout est là dedans le manuel tu devra apprendre à utiliser.
foreach comme moult instructions en programmation vient de l'anglais: for each et se traduirais par "pour chaque".
foreach c'est plus qu'une instruction et c'est une boucle logique.
Il en existe plusieurs et ce sont des éléments cruciaux de la logique et de l'algorithmie. Boucles conditionnelle, ils(ces éléments logique comme dans la logique mathématique et binaire de Booles, prêtez pas attention à cette parenthéses si les math de Booles vous dise rien) sont aussi appelés tests logique même s'il y a une petite différence entre les 2.
Une boucle conditionnelle est composé d'un (au moins) test logique.
Le logique c'est simple, celle là en tout cas. Elle est à la portée des grosses calculettes que nous appelons ordinateur qui utilisent un système binaire de notation/mémorisation.
Revenons à votre code(que j'ai indenté un peu plus pour bien différencier chaque élément de la structure du langage) avant que je vous perde nous allons repérer le test et la boucle:
<?php
foreach ($ligne as $num => $element)
/*******POUR CHAQUE **********
******** VALEUR DU TABLEAU $ligne ***************
*********le tableau est donc parcouru de sa première à dernière valeur****
********* as(en anglais tel que) $num**************
**********ON RETIENT LA VALEUR DANS LA VARIABLE $num
************* =>$element**********************
***avec comme pointeur(le compteur du tableau, aussi appelé clé) $element**
*/
/*---------------------Voilà la première partie de notre boucle---------*/
/*---------------------la 1ere partie va indiquer les conditions de cette boucle:--*/
/*---la condition(et le nombre de tours de boucle) correspond ici à ce que chaque valeur du tableau soit parcourues---------------*/
/*----------------Il y aura donc 15 tours de boucle, 3 si notre tableau avait 3 valeurs, 17380 tours de boucle s'il y a 17380 valeurs dans notre tableau---*/
/*--------------------Donc la première partie du foreach donne la condition correspondant au nombre de répétitions(valeurs retenus dans le tableau) des instructions qui seront situées entre les accolades----------*/
{ ?>
/*----entre les accolades il y aura donc pour chaque tour de boucle: --*/
<option value="<?php echo $num; ?>"><?php echo $num; ?></option>
/*--- l'affichage d'une item de liste déroulante ayant la valeur $num(donc la valeur retenue dans le tableau pour chaque tour en value et entre les 2 balises <option>----*/
/* on ferme l'accolade---*/
<?php
}
?>
Wow. J'suis époustouflé du mal que vous vous êtes donné pour me répondre. C'est super claire, je viens de finir la lecture de vos poste et plein de notions s'éclaire (plein de possibilités se présentent également). Un immense merci ! Ca me fait quelque peu rire de me dire qu'un anonyme prend mieux le rôle de ma prof que ma prof elle même ! J'ai encore envie de vous remercier !
j'espere que vous verrez ce message :)
Roxane
j'espere que vous verrez ce message :)
Très cordialement,
Roxane
Modifié par KingPin le 20/01/2014 à 03:57
Ce que la boucle conditionnelle nous a permit de faire et d'automatiser l'écriture de balises html redondantes et ennuyeuses à taper à la main. C'est faisable s'il n'y a que 15 valeurs mais impossible dés qu'on dépasse la 100aine.
<select>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
....etc jusqu'à 15
</select>
Imaginez le temps gagné si c'est une liste déroulante qui doit indiquer le jour de naissance.
Vous pouvez la faire: vous ajouter dans votre tableau $ligne les valeurs jusqu'à 31.
hmm $ligne a servit je vais utiliser qqchose de plus approprié:
<?php
$jours_du_mois = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,13,14,15,16,17,18,19,20,21,21,23,24,25,26,27,28,29,30,31);
/* on retrouve notre boucle avec sa condition(passée à 31 tour) */
<?php foreach ($jours_du_mois as $num => $element){ ?>
<!----------------- le HTML =31 fois les jours dans l'ordre,chaque choix de la liste ----------------->
<option value="<?php echo $num; ?>"><?php echo $num; ?></option>
<?php
} // fermeture de la boucle de répétition
?><!---------------- FERMETURE DU CODE PHP -->
</SELECT> <!-------FERMETURE DE LA LISTE DEROULANTE --------->
/:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Même chose avec uniquement le PHP
<?php
$jours_du_mois = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,13,14,15,16,17,18,19,20,21,21,23,24,25,26,27,28,29,30,31);
php foreach ($jours_du_mois as $num => $element){
?>
<option value="<?php echo $num; ?>">
<?php echo $num; ?>
</option>
<?php
}
20 janv. 2014 à 03:55
Si je fais un tableau il faudrait que je tapes tous les nombres de 1910 à 2010?
le manuel sur les tableaux peut servir:
http://us1.php.net/manual/fr/function.array.php
Nous pouvons voir que nous pouvons facilement accéder aux éléments du tableau en utilisant la notation entre crochet comme ceci:
$tableau[0]="1"; // entre les crochets le numéro d'ordre des valeurs qui commence par 0
$tableau[55]="56" // ainsi 55 dans les crochets indique la 56ème valeur du tableau(compte à partir de zéro ne pas oublier).
Cette façon de faire permet de mettre une seule valeur à la fois dans le tableau, cela va nous servir.
On va pas taper 100 nombres qui se suivent , l'informatique est censée nous rendre la vie plus simple(si ce n'est pas le cas le programme est bon à jeter) et
on a des boucles en programmation:
foreach est une boucle qui nécessite un tableau en condition Mon tableau étant le résultat il ne peut pas être ma condition, je vais utiliser une autre boucle logique:
la boucle WHILE (veut dire "tant que" en angliche)
http://php.net/manual/fr/control-structures.while.php
// je crée ma variable qui sert de compteur, je vais commencer du nombre 1.
$compteur = 0;
// je crée un tableau pour les chiffres des années pour l'instant il sera vide
$liste_annee= new array();
// étudions la condition logique:
while ($compteur < 101)
/* TANT QUE $compteur EST STRICTEMENT INFERIEUR A 101(symbole < on en revient au math)*/
/* on fait ce qui SUIT ENTRE LES ACCOLADES ***********/
{
// POUR REMPLIR LE TABLEAU
$liste_annee[$compteur]=$compteur+1910
/* $compteur va se répéter 100 fois de 1 à 100 compris et à chaque fois nous lui ajoutons une nouvelle valeur*/
/*---------------- au tour 1 de la boucle $liste_annee[0]=0+1910; ---------------------
--------------------- tour 2 $liste_annee[1]=1+1910; -----------------------------------
--------------------- tour 68 $liste_annee[67]=67+1910; -----------------------------------
--------------------- dernier tour 101ème $liste_annee[100]=100+1910; -----------------------------------
*/
/*
et bien sûr si nous affichons le contenu du tableau à chaque tour de la boucle WHILE celui ci sera incrémenté de 1(incrémenté= on ajoute une valeur de façon cyclique, comme dans une boucle*/
echo $liste_annee[$compteur];
echo ("<br/>");
// affichera 1910 à 2010 avec un saut de ligne à chaque fois
}
Je pense les autres structures conditionnelles(qui ne sont pas toutes des boucles) sera le sujet de votre prochain cours.
Bon apprentissage.
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Uniquement la boucle while: