[PHP] Tableau

Fermé
Z-obaze Messages postés 34 Date d'inscription mardi 6 mars 2007 Statut Membre Dernière intervention 13 mars 2008 - 25 juin 2007 à 11:25
bubuche87 Messages postés 41 Date d'inscription mercredi 14 mars 2007 Statut Membre Dernière intervention 26 janvier 2009 - 14 juil. 2007 à 11:55
Salut tout le monde, donc j'ai un soucis avec un tableau.

voici mon code :

while ($i <= 1)
{

$Slot[$i] = `head -n $ligneSlot /infra/takad/scripts/rom7/rom7.txt | tail -n 1`;

$TypeCarte[$i] = `head -n $ligneTypeCarte /infra/takad/scripts/rom7/rom7.txt | tail -n 1`;

$SerialNumber[$i] = `head -n $ligneSerialNumber /infra/takad/scripts/rom7/rom7.txt | tail -n 1`;

$PartNumber[$i] = `head -n $lignePartNumber /infra/takad/scripts/rom7/rom7.txt | tail -n 1`;

$b = Array (Array("TypeCartes"=>"$TypeCarte[$i]", "PartNumber"=>"$PartNumber[$i]", "NumeroSerie"=>"$SerialNumber[$i]","Slot"=>"$Slot[$i]"));

$i++;

$ligneTypeCarte = ($ligneTypeCarte + 4);
$ligneSlot = ($ligneSlot + 4);
$ligneSerialNumber = ($ligneSerialNumber + 4);
$lignePartNumber = ($lignePartNumber + 4);

}

Et mon problème c'est que le tableaux ne s'incrémente pas, il reste toujours a la ligne [0], et je voudrais qu'à chaque passage dans la boucle while, ce soit une nouvelle ligne qui soit ajoutée après la précédente et je ne vois pas comment faire.

Merci d'avance pour votre aide.

4 réponses

bubuche87 Messages postés 41 Date d'inscription mercredi 14 mars 2007 Statut Membre Dernière intervention 26 janvier 2009 11
25 juin 2007 à 13:13
Essai en remplacant

$Slot[$i]

par

$Slot[]

php le fera s'incrémenter tout seul ;)

et rajoute
$Slot = array ( );
avant la boucle.
0
Z-obaze Messages postés 34 Date d'inscription mardi 6 mars 2007 Statut Membre Dernière intervention 13 mars 2008 1
25 juin 2007 à 14:02
Merci de ton aide, j'ai bien fait ce que tu m'as proposé et ça incrémente bien les variables mais lors de l'affichage ça affiche seulement la dernière ligne.

exemple au lieu faire sa pour afficher ici deux lignes dans mon tableau,

$b = Array (Array("TypeCartes"=>"$TypeCarte[$i]", "PartNumber"=>"$PartNumber[$i]", "NumeroSerie"=>"$SerialNumber[$i]","Slot"=>"$Slot[$i]") Array("TypeCartes"=>"$TypeCarte[$i]", "PartNumber"=>"$PartNumber[$i]", "NumeroSerie"=>"$SerialNumber[$i]","Slot"=>"$Slot[$i]"));

je voudrais que sa rajoute autant de fois cette partie "Array("TypeCartes"=>"$TypeCarte[$i]", "PartNumber"=>"$PartNumber[$i]", "NumeroSerie"=>"$SerialNumber[$i]","Slot"=>"$Slot[$i]")" que l'on passe dans la boucle mais je ne vois pas comment faire.


voili voilou
0
Va voir sur Google la fonction array_push. (empiler un élément à la fin d'un tableau)

Et regardes toutes les fonctions liées aux Array en passant tu y trouveras ta vie.
0
bubuche87 Messages postés 41 Date d'inscription mercredi 14 mars 2007 Statut Membre Dernière intervention 26 janvier 2009 11
14 juil. 2007 à 11:55
J'ajoute qu'il existe des fonctions qui est liée aux array, mais qui ne commencent pas par array

is_array : détermine si une variable est un tableau.
in_array : détermine si une valeur existe dans un tableau
sort : trie les elements d'un tableau (avec deux ordre possible)


si tu veux voir le contenu de ton tableau, tu as aussi les fonction print_r et var_dump/var_export.

Le premier permet un affichage très simple.

Mais il ne servent généralement qu'au phases de test.
Je te conseille d'utiliser les balises pre quand tu utilise une des trois dernières fonctions dont j'ai parlé.
0