[php] multidimensionale array uitbreiden

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • helpme
  • Registratie: Oktober 2000
  • Laatst online: 19:52
ik probeer de volgende array te maken
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Array
(
    [0] => Array
        (
            [peer[0]] => een
            [peer[1]] => twee
            [peer[2]] => drie
        )

    [1] => Array
        (
            [peer[0]] => vier
            [peer[1]] => vijf
            [peer[2]] => zes
        )

    [2] => Array
        (
            [peer[0]] => zeven
            [peer[1]] => acht
            [peer[2]] => negen
        )
)


Dit lukt door de array in 1 keer op te bouwen door het volgende commando
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
$array = array( 0 => array (
                        'peer[0]' => 'een',
                        'peer[1]' => 'twee',
                        'peer[2]' => 'drie'),
                1 => array (
                        'peer[0]' => 'vier',
                        'peer[1]' => 'vijf',
                        'peer[2]' => 'zes'),
                2 => array (
                        'peer[0]' => 'zeven',
                        'peer[1]' => 'acht',
                        'peer[2]' => 'negen')
                );


Alleen het is de bedoeling dat dit een een loop gebeurd, en dit lukt mij niet.

Wat ik ook probeer, hij overschrijft steeds het record, en dan krijg je dit:
code:
1
2
3
4
5
6
7
$array = array( 0 => array (
                        'peer[2]' => 'drie'),
                1 => array (
                        'peer[2]' => 'zes'),
                2 => array (
                        'peer[2]' => 'negen')
                );


Als iemand me net dat laatste zetje kan geven, want kheb al alles geprobeerd, tweakers, google en php.net afgezocht, en kan er niks over vinden.

Acties:
  • 0 Henk 'm!

Verwijderd

probeer de functie array_push eens

Acties:
  • 0 Henk 'm!

  • frickY
  • Registratie: Juli 2001
  • Laatst online: 18-09 14:42
Om een waarde aan een array toe te voegen, kun je $array[] = "nieuwe waarde" gebruiken, of array_push().

Maar ik snap je gewenste structuur niet. Waarom wil je "peer[2]" als key van je array :?

Acties:
  • 0 Henk 'm!

  • JHS
  • Registratie: Augustus 2003
  • Laatst online: 16-09 16:02

JHS

Splitting the thaum.

Je gebruikt nu peer[2] als key, terwijl dat lijkt me gewoon [2] moet zijn, en peer als arraynaam :) . [php=array_push] is verder veel geschikter om iets toe te voegen, of $peren[].

DM!


Acties:
  • 0 Henk 'm!

Verwijderd

PHP:
1
2
3
4
5
$getallen = array('een', 'twee', 'drie', 'vier', 'vijf', 'zes', 'zeven', 'acht', 'negen');
$array = array();
for ($i = 0; $i < count($getallen); $i += 3) {
 $array[] = array('peer[0]' => $getallen[$i], 'peer[1]' => $getallen[$i + 1], 'peer[2]' => $getallen[$i + 2]);
}

Acties:
  • 0 Henk 'm!

Verwijderd

PHP:
1
2
3
4
5
6
7
8
$array = array();
for ($i=0; i< 3; i++) {
  $item_array = array();
  for ($j=0; i < 3; i++) {
    $item_array[] = "peer[$j]";
  }
  $array[] = $item_array;
}

Hmms dit klopt ook niet, maar zo moet het ongeveer :9

[ Voor 18% gewijzigd door Verwijderd op 07-03-2006 16:05 ]


Acties:
  • 0 Henk 'm!

  • George
  • Registratie: Maart 2006
  • Laatst online: 02-03 19:22
PHP:
1
2
3
4
5
6
7
8
9
10
$fruitMand = array();
$numbers = array('een', 'twee', 'drie', 'vier', 'vijf', 'zes', 'zeven', 'acht', 'negen');
$counter = 0;
for($x = 0; $x < 3; $x++) {
    for($y = 0; $y < 3; $y++) {
        $fruitMand[$x]["peer[$y]"] = $numbers[$counter];
        $counter++;
    }
}
print_r($fruitMand);


-GIsmaël

[ Voor 23% gewijzigd door George op 07-03-2006 16:48 ]

-George.


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Waarom zou je "peer[x]" als index willen hebben? :?

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

Verwijderd

-NMe- schreef op dinsdag 07 maart 2006 @ 16:53:
Waarom zou je "peer[x]" als index willen hebben? :?
Volgens mij moet de arraynaam peer zijn.... Nou, ik vermoed dat de TS deze basic vraag hiermee wel kan beantwoorden lijkt me :)
Pagina: 1