Précédent   Forum des professionnels en informatique > PHP > Langage > Fonctions
Fonctions Forum d'entraide sur les fonctions PHP. Avant de poster -> FAQ fonctions et Sources diverses
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/08/2008, 10h55   #1
Membre actif
 
Inscription : mai 2007
Messages : 221
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 221
Points : 185
Points : 185
Par défaut [Tableaux] Question sur array_push

Bonjour a tous !

Voila je poste pour une question surement stupide mais je saisis pas le truc.

J'aimerais pouvoir injecter des donnes dans un tableau, j'utilise donc array_push.

Seulement array_push place les valeurs dans ce format

array ([0] => data_1, [1] => data_2) etc

J'aurais aime formater sur ce format : array(data_1, data_2);

Je ne sais pas comment faire, quelqu'un aurait une idee ?



Merci d'avance a tous :-)
jypees est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/08/2008, 11h03   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 383
Points : 16 383
Un tableau est une association clef/valeur.
Tu as toujours une clef pour une valeur.

Il est recommandé d'utiliser
$array[] = valeur; plutot que array_push();
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/08/2008, 11h04   #3
Expert Confirmé
 
Avatar de Eusebe
 
Inscription : mars 2006
Messages : 1 989
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : mars 2006
Messages : 1 989
Points : 3 606
Points : 3 606
Bonjour,

array(data_1, data_2) est équivalent à array ([0] => data_1, [1] => data_2).

exécutes par exemple ce code :
Code :
1
2
$test = array('data_1', 'data_2');
print_r($test);
et regardes le résultat...

Ce que tu vois entre crochets, ce sont les clés (ou index) de ton tableau. Un tableau a nécessairement des clés. Quand tu ne les précises pas comme ci-dessus lors de la création (ou en faisant simplement $tableau[] = 'data3'), les clés utilisées sont alors simplement des entiers, en commençant par 0, et en incrémentant de 1 à chaque nouvelle valeur...
Eusebe est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/08/2008, 11h06   #4
Membre actif
 
Inscription : mai 2007
Messages : 221
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 221
Points : 185
Points : 185
Tout d'abord merci pour ta reponse

Le soucis c'est que l'api que j'utilise a besoin d'un tableau sous la forme suivante
array(data_1,data_2,data_3,data_4);
Mais je dois construire ce tableau de facon dynamique avec initialement un array vide.

Et array_push ou bien ta methode me cree un tableau associatif, je souhaite faire un tableau simple. Et la je sais pas comment faire

As-tu une idee ?
jypees est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/08/2008, 11h11   #5
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 383
Points : 16 383
On recommence : un tableau sans clef ca n'existe pas.

Quand tu ecris
array(data_1,data_2,data_3,data_4);

PHP créé :
array(0=>data_1,1=>data_2,2=>data_3,3=>data_4);
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/08/2008, 11h13   #6
Membre actif
 
Inscription : mai 2007
Messages : 221
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 221
Points : 185
Points : 185
En faite j'ai repondu et poster avant le moderateur donc j'avais pas vu sa reponse ^^, ca s'est jouer a quelques secondes

Apres avoir fait le test effectivement c'est logique. Donc j'ai changer en fonction de vos reponses et sa fonctionne, donc un grand merci a vous :-)

jypees est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h04.


 
 
 
 
Partenaires

Hébergement Web