Page 1 sur 1

Récupérer les valeurs d'un array

Posté : 21 nov. 2009, 14:47
par visualight
Bonjour,

Comment puis-je récupérer la valeur d'un array en variable séparée par des virgules ?

Exemple j'ai un array contenant des chiffres.
Un print_r de l'array le renvoie :
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )

Comment le récupérer comme ceci ? :
$variable = '1,2,3,4,5';

Merci
Raph

Re: Récupérer les valeurs d'un array

Posté : 21 nov. 2009, 15:01
par FuZZyLine
Salut,
Bonjour,
Comment puis-je récupérer la valeur d'un array en variable séparée par des virgules ?
Exemple j'ai un array contenant des chiffres.
Un print_r de l'array le renvoie :
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
Comment le récupérer comme ceci ? :
$variable = '1,2,3,4,5';
Merci
Raph
Arf, c'est vrai, c'est samedi. http://www.php.net doit être fermé... tsss, tsss ;)

foreach devrait faire l'affaire pour ce que tu veux:

foreach($array AS $key => $value)

> $array = Ton_Tableau
> $key = la clef au pointeur actuel
> $value = valeur de l'élément au pointeur actuel
> . = concaténation
// Ta variable destination
//
$strDest = "";

// Boucle comme indiqué
//
foreach($array AS $key => $value) // ou foreach($array AS $value)
{
   // cat l'élément recu
   //
   $strDest = $value.", ";
}

// Nétoye la chaine
//
$strDest = "'".rtrim($strDest, ", ")."'";
Beaucoup d'autres techniques mais si tu ne connais pas celle-ci je pense que ca fait un bon début.

@+ bon code ;)

PS: Si ca avait été en semaine je t'aurais donné: http://fr2.php.net/manual/fr/control-st ... oreach.php (humour)

Re: Récupérer les valeurs d'un array

Posté : 21 nov. 2009, 15:29
par visualight
Bonjour,
foreach($array AS $key => $value) // ou foreach($array AS $value)
{
   // cat l'élément recu
   //
   $strDest = $value.", ";
}
Merci pour ta réponse mais le code que tu fournis ne permet pas de recréer correctement la chaine 1,2,3,4,5 pour deux raisons :

1. si on fait un echo de $strDest, il n'affiche que le dernier chiffre trouvé dans le tableau (en l'occurence "5").
2. Le code affichera toujours une virgule après un chiffre même si c'est le dernier

J'ai un peu recherché et j'ai trouvé qu'il était possible d'utiliser une jointure dans un array et j'ai fait ceci qui fonctionne à merveille :
// $_SESSION["authid"] = Array
$map = array_map(null, $_SESSION["authid"]);
$join = join(', ', $map);

// echo $j me sort bien : 1,2,3,4,5
echo $j;
Merci en tout cas,
Raph

Re: Récupérer les valeurs d'un array

Posté : 21 nov. 2009, 15:56
par FuZZyLine
Bonjour,
foreach($array AS $key => $value) // ou foreach($array AS $value)
{
   // cat l'élément recu
   //
   $strDest = $value.", ";
}
Merci pour ta réponse mais le code que tu fournis ne permet pas de recréer correctement la chaine 1,2,3,4,5 pour deux raisons :

1. si on fait un echo de $strDest, il n'affiche que le dernier chiffre trouvé dans le tableau (en l'occurence "5").
2. Le code affichera toujours une virgule après un chiffre même si c'est le dernier[*]
Précipitation: oups.

il faut écrire
$strDest .= $value.", ";
le point a été oublié lol dsl

[*] Non, le rtrim enlève l'éspace et la virgule.

@+ ;)