Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[PHP] Variable maken van multi-array

Pagina: 1
Acties:

  • MyKey
  • Registratie: Augustus 2012
  • Laatst online: 19-11 09:02
Beste Tweakers,

Ik zit even vast op dit moment. Mijn kennis is op dit moment nog niet goed genoeg om hier goed mee om te gaan. Toch wil ik graag jullie hulp bij het volgende.

Ik heb 3 verschillende arrays.

arrWon()
arrLose()
arrDraw()

In deze array zitten het volgende:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Array
(
    [Henk] => Array
        (
            [0] => gewonnen
            [1] => gewonnen
        )

    [Peter] => Array
        (
            [0] => gewonnen
            [1] => gewonnen
        )

    [Fabian] => Array
        (
            [0] => gewonnen
        )

    [Stefan] => Array
        (
            [0] => gewonnen
        )

)


Wat ik nu graag wil is dat hij van de key een nieuwe variable aanmaakt, het als value de aantal values uit deze array.
Dus $henk zou dan 2 moeten krijgen, $stefan zou dan 1 moeten krijgen etc.

Ik heb al wat dingen geprobeerd, maar ik kom er niet uit..
Zouden jullie hiermee willen helpen? Duw in de goede richting ofzo..

[ Voor 0% gewijzigd door RobIII op 15-01-2014 11:37 . Reden: quote->code ]

Amateur racer met Trustmaster TMX + Wheelstand Pro


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
MyKey schreef op woensdag 15 januari 2014 @ 11:34:
Ik heb al wat dingen geprobeerd
Laat eens zien dan? Dan kunnen we op basis daarvan aangeven wat je verkeerd doet. Oh, en gebruik a.u.b. code tags voor code, de quote-tag is bedoeld voor... quotes ;)

[ Voor 24% gewijzigd door RobIII op 15-01-2014 11:37 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • MyKey
  • Registratie: Augustus 2012
  • Laatst online: 19-11 09:02
RobIII schreef op woensdag 15 januari 2014 @ 11:36:
[...]

Laat eens zien dan? Dan kunnen we op basis daarvan aangeven wat je verkeerd doet. Oh, en gebruik a.u.b. code tags voor code, de quote-tag is bedoeld voor... quotes ;)
Ah, ik kon het zo snel even niet vinden, maar ik zal idd de code tags gebruiken :)

Dit is wat ik probeer:
code:
1
2
3
4
        <?php foreach ($arrWon as $key => $values) {
            ${$key . 'Won'} = $values; {
            }
        } ?>


Op deze manier probeer ik dus een nieuwe variable te maken, met de naam van de deelnemers en dan Won, wat ik dan dus wil $henkWon met zijn 2 values daarin.
Met de 1e gaat dit goed, maar met de volgende niet meer

Amateur racer met Trustmaster TMX + Wheelstand Pro


  • Rubenskoo
  • Registratie: December 2007
  • Laatst online: 20-11 19:22
Volgens mij gaat het niet mis in je foreach, maar in het aanmaken van je array. Kijk eens of je in het aanmaken van je array de regel eerder afsluit dan de bedoeling is. Als ik jou was zou ik trouwens error reporting aan doen als je dat nog niet had.

Mag ik ook vragen waarvoor je op deze manier data wil vasthouden? Ik zou zelf deze data nooit in aparte variabelen stoppen, maar in een array.

Een werkend voorbeeldje:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$arrWon = array(
    "henk" => array(
        "gewonnen",
        "gewonnen"
        ),
    "peter" => array(
        "gewonnen",
        "gewonnen"
        ),
    "fabian" => array(
        "gewonnen"
        ),
    "stefan" => array(
        "gewonnen"
        )
);

foreach ($arrWon as $key => $values) {
            ${$key . 'Won'} = $values;
}

var_dump($henkWon, $peterWon, $fabianWon, $stefanWon);

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Probeer extract() eens. ;)

'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.


  • MyKey
  • Registratie: Augustus 2012
  • Laatst online: 19-11 09:02
Rubenskoo schreef op woensdag 15 januari 2014 @ 12:33:
Volgens mij gaat het niet mis in je foreach, maar in het aanmaken van je array. Kijk eens of je in het aanmaken van je array de regel eerder afsluit dan de bedoeling is. Als ik jou was zou ik trouwens error reporting aan doen als je dat nog niet had.

Mag ik ook vragen waarvoor je op deze manier data wil vasthouden? Ik zou zelf deze data nooit in aparte variabelen stoppen, maar in een array.

Een werkend voorbeeldje:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$arrWon = array(
    "henk" => array(
        "gewonnen",
        "gewonnen"
        ),
    "peter" => array(
        "gewonnen",
        "gewonnen"
        ),
    "fabian" => array(
        "gewonnen"
        ),
    "stefan" => array(
        "gewonnen"
        )
);

foreach ($arrWon as $key => $values) {
            ${$key . 'Won'} = $values;
}

var_dump($henkWon, $peterWon, $fabianWon, $stefanWon);
Damn.. Mijn fout zat dat mijn var_dump in de foreach stond en niet daar buiten.. door jouw voorbeeld zag ik direct mijn fout. Bedankt!

Ik wil dit los in een variable hebben omdat ik de data wil plaatsen in google chart, en het voorbeeld wat ik had gezien had google charts daar aparte variables nodig.
Dat ziet er ook wel handig uit, daar ga ik ook eens mee spelen :)

Amateur racer met Trustmaster TMX + Wheelstand Pro


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

MyKey schreef op woensdag 15 januari 2014 @ 12:56:
[...]
Ik wil dit los in een variable hebben omdat ik de data wil plaatsen in google chart, en het voorbeeld wat ik had gezien had google charts daar aparte variables nodig.
Dan pass je toch gewoon $arrWon['bla'] in plaats van $bla?
Dat ziet er ook wel handig uit, daar ga ik ook eens mee spelen :)
Hij doet precies waar je om vroeg maar dan mét beveiliging tegen het potentieel overschrijven van reeds bestaande variabelen? ;)

'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.


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Ik ben overigens érg benieuwd naar waarom je $henkWon, $peterWon, $fabianWon, $stefanWon zou willen hebben i.p.v. $arrWinners['henk'=>2, 'peter'=>5, 'fabian'=>18, 'stefan'=>3].

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij

Pagina: 1