[PHP]Array uitlezen

Pagina: 1
Acties:

Onderwerpen


  • Menesis
  • Registratie: April 2004
  • Laatst online: 21-11 14:45
Ik schaam me dat ik dit moet posten, maar het lukt gewoon niet! Ik heb gegoogled en kom er niet uit... Het moet heel simpel zijn. Binnen Drupal heb ik de volgende code i.c.m. de webform module. Overigens kan ik helemaal geen documentatie vinden over de opbouw van $submission->data

Anyway, dit stukje code werkt en telt antwoorden van vragen bijelkaar op:
code:
1
2
3
4
$total = 0;
foreach ($submission->data['1']['value'] as $question) {
    $total = $total + $question;
}


nu probeerde ik zelf bijv. de tweede vraag uit te lezen via dit, maar dat werkte niet..
code:
1
$submission->data['1']['value']['2'];


Wat doe ik verkeerd?

Mixed Reality dev


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 17:50

Janoz

Moderator Devschuur®

!litemod

Doe anders gewoon eerst eens een vardump van $submission->data om te zien wat nu werkelijk de struktuur is en of de keys wel zijn welke je verwacht dat ze zijn.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • Avalaxy
  • Registratie: Juni 2006
  • Laatst online: 16:23
Kun je even

PHP:
1
2
3
echo "<pre>";
print_r($submission);
echo "</pre>";


Doen?

  • Menesis
  • Registratie: April 2004
  • Laatst online: 21-11 14:45
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
stdClass Object
(
    [nid] => 1
    [uid] => 1
    [submitted] => 1346748245
    [remote_addr] => 171.23.129.xx
    [is_draft] => 0
    [data] => Array
        (
            [1] => Array
                (
                    [value] => Array
                        (
                            [1  ] => 2
                            [2  ] => 3
                            [3  ] => 4
                        )

                )

            [2] => Array
                (
                    [value] => Array
                        (
                            [0] => 87
                        )

                )

            [3] => Array
                (
                    [value] => Array
                        (
                            [0] => email@email.com
                        )

                )

        )

)
(het gaat om die 2 3 en 4, dat zijn de 'scores' van een vragenlijst..

[ Voor 3% gewijzigd door Menesis op 04-09-2012 10:45 ]

Mixed Reality dev


  • skabouter
  • Registratie: Oktober 2000
  • Laatst online: 26-11 12:49

skabouter

Skabouter

spoiler:
Array
(
[1 ] => 2
[2 ] => 3
[3 ] => 4
)

Er staan een aantal spaties achter de key's

[ Voor 65% gewijzigd door skabouter op 04-09-2012 10:47 . Reden: Ik zal samo's post niet verpesten ;) ]

[ Dislect ]


  • samo
  • Registratie: Juni 2003
  • Laatst online: 18:45

samo

yo/wassup

En, welke conclusie trek je daar uit?

Bekend van cmns.nl | ArneCoomans.nl | Het kindertehuis van mijn pa in Ghana


  • Menesis
  • Registratie: April 2004
  • Laatst online: 21-11 14:45
er staan inderdaad spaties achter de key! dat zou een goede verklaring kunnen zijn :)

edit: yes, de spaties waren inderdaad het probleem. Thanks a lot, hier had ik me gister toch wel een uurtje op blind gestaard.
Ik had de structuur van de array nog wel bekeken in krumo binnen drupal, die gaf die spaties niet weer...

[ Voor 58% gewijzigd door Menesis op 04-09-2012 10:51 ]

Mixed Reality dev


  • gybrus
  • Registratie: Juli 2008
  • Laatst online: 07-11 12:01
Bij twijfel altijd even een vardump() doen.
En dan het liefst nog in een die() zodat je geen gedonder krijgt met code die erna komt.

KEVIN DIERKX | DISTORTED FUSION | GITHUB

Pagina: 1