[RESOLU] array fill avec debut et fin différente

Solwins
Invité n'ayant pas de compte PHPfrance

12 févr. 2016, 15:25

Bonjour,

Je souhaite créer un array avec les valeurs suivantes

$a =1;
$b = 2;
$c = 3;
$nombre =10;

$arr = array($a, $b ,$b ,$b ,$b ,$b ,$b ,$b ,$b , $c);

Sachant évidement que $nombre peut être 10 comme 50...

C'est tout bête mais j'ai essayé avec range, array_fill, array_combine et je n'ai pas réussi.

Merci pour votre éclairage

Avatar du membre
Mammouth du PHP | 1609 Messages

12 févr. 2016, 15:45

Bonjour, pourquoi ne pas faire une simple boucle ? Tu mets $a dans le tableau puis tu mets 8 fois $b et tu mets $c :
$a = 1;
$b = 2;
$c = 3;
$nombre = 10;

$arr = array($a);

for($i = 2; $i < $nombre; $i++)
 $arr[] = $b;

$arr[] = $c;
Développeur web depuis + de 20 ans

ynx
Mammouth du PHP | 586 Messages

12 févr. 2016, 15:45

Salut,

Si j'ai bien compris, tu souhaites remplir un tableau de $nombre éléments dont le premier élément est $a, le dernier élément est $c et tous les autres éléments $b ?
Quelque chose comme ceci ? :
$a = 1;
$b = 2;
$c = 3;
$nombre = 10;

$arr = array();

$arr[0] = $a;

for ($i = 1; $i < $nombre - 2; $i++) {
    $arr[$i] = $b;
}

$arr[$nombre - 1] = $c;

var_dump($arr);
Bonne journée

Solwins
Invité n'ayant pas de compte PHPfrance

12 févr. 2016, 15:56

Génial ! Quelle réactivité !!
Merci beaucoup,