PHP : Loop in een multidimensional associative array

helmuteke
Pro Member
Pro Member
Berichten: 421
Lid geworden op: 08 Feb 2010
Bedankt: 24 keer
Uitgedeelde bedankjes: 2 keer

PHP : Loop in een multidimensional associative array

Berichtdoor helmuteke » 31 Mar 2017, 10:51

Doordat ik geen vragen meer mag stellen in stackoverflow , is er mss hier iemand die me kan helpen.
Heb al veel doorgelezen maar het lukt me niet om een Foreach te doen voor onderstaande array

Dit is de dump van de array :

Code: Selecteer alles

 Array ( [0] => Array ( [datum] => 20-03-2017 [soort] => unavailability [reden] => Vakantie [gepstart] => 09:00:00 [gepstop] => 16:36:00 [actstart] => 09:00:00 [actstop] => 16:36:00 ) [1] => Array ( [datum] => 21-03-2017 [soort] => shift [reden] => [gepstart] => 09:00:00 [gepstop] => 17:00:00 [actstart] => 09:00:00 [actstop] => 16:30:00 ) [2] => Array ( [datum] => 21-03-2017 [soort] => break [reden] => [gepstart] => 12:30:00 [gepstop] => 13:00:00 [actstart] => 12:30:00 [actstop] => 13:00:00 ) [3] => Array ( [datum] => 22-03-2017 [soort] => shift [reden] => [gepstart] => 08:30:00 [gepstop] => 16:30:00 [actstart] => 08:30:00 [actstop] => 17:30:00 ) [4] => Array ( [datum] => 22-03-2017 [soort] => break [reden] => [gepstart] => 12:30:00 [gepstop] => 13:00:00 [actstart] => 12:30:00 [actstop] => 13:00:00 ) [5] => Array ( [datum] => 23-03-2017 [soort] => shift [reden] => [gepstart] => 08:00:00 [gepstop] => 16:30:00 [actstart] => 08:00:00 [actstop] => 16:30:00 ) [6] => Array ( [datum] => 23-03-2017 [soort] => break [reden] => [gepstart] => 12:30:00 [gepstop] => 13:00:00 [actstart] => 12:30:00 [actstop] => 13:00:00 ) [7] => Array ( [datum] => 24-03-2017 [soort] => shift [reden] => [gepstart] => 09:30:00 [gepstop] => 17:00:00 [actstart] => 09:00:00 [actstop] => 17:00:00 ) [8] => Array ( [datum] => 24-03-2017 [soort] => break [reden] => [gepstart] => 12:30:00 [gepstop] => 13:00:00 [actstart] => 12:30:00 [actstop] => 13:00:00 ) [9] => Array ( [datum] => 25-03-2017 [soort] => unavailability [reden] => Thuis [gepstart] => 07:00:00 [gepstop] => 07:00:00 [actstart] => [actstop] => ) [10] => Array ( [datum] => 26-03-2017 [soort] => unavailability [reden] => Thuis [gepstart] => 07:00:00 [gepstop] => 07:00:00 [actstart] => [actstop] => ) )


Nu zou ik een foreach loop willen van deze array waarin ik telkens dan een volledige print maakt van de elementen
vb 0 - datum - soort -. . . . .
1 - datum - soort - . . . . .

nu de print kan ik wel zelf coderen maar die foreach lukt echt niet

Alvast bedankt

Gebruikersavatar
r2504
Deel van't meubilair
Deel van't meubilair
Berichten: 29214
Lid geworden op: 28 Okt 2003
Bedankt: 1928 keer
Recent bedankt: 13 keer
Uitgedeelde bedankjes: 405 keer

Re: PHP : Loop in een multidimensional associative array

Berichtdoor r2504 » 31 Mar 2017, 11:18

http://php.net/manual/en/control-structures.foreach.php

Wat je zoekt is het stukje... Unpacking nested arrays with list().

Gebruikersavatar
raf1
Elite Poster
Elite Poster
Berichten: 4108
Lid geworden op: 17 Nov 2009
Bedankt: 1371 keer
Recent bedankt: 14 keer
Uitgedeelde bedankjes: 227 keer

Re: PHP : Loop in een multidimensional associative array

Berichtdoor raf1 » 31 Mar 2017, 11:21

Gaat dat zo ook niet:

Code: Selecteer alles

foreach ($mijnarray as $element => $data) {
    echo $element . " - " . $data['datum'] . " - " . $data['soort'] . " - " . $data['reden'] . " - " . $data['gepstart'] . " - " . $data['gepstop'] . " - " . $data['actstart'] . " - " . $data['actstop'] . "\r\n";
}

helmuteke
Pro Member
Pro Member
Berichten: 421
Lid geworden op: 08 Feb 2010
Bedankt: 24 keer
Uitgedeelde bedankjes: 2 keer

Re: PHP : Loop in een multidimensional associative array

Berichtdoor helmuteke » 31 Mar 2017, 11:41

raf1 schreef:Gaat dat zo ook niet:

Code: Selecteer alles

foreach ($mijnarray as $element => $data) {
    echo $element . " - " . $data['datum'] . " - " . $data['soort'] . " - " . $data['reden'] . " - " . $data['gepstart'] . " - " . $data['gepstop'] . " - " . $data['actstart'] . " - " . $data['actstop'] . "\r\n";
}


Dit deed het . Nu toch eens zoeken waar ik fout zat.

Nu is de volgende stap om deze array te hergroeperen.

ipv

Code: Selecteer alles

0 - 20-03-2017 - unavailability - Vakantie - 09:00:00 - 16:36:00 - 09:00:00 - 16:36:00
1 - 21-03-2017 - shift - - 09:00:00 - 17:00:00 - 09:00:00 - 16:30:00
2 - 21-03-2017 - break - - 12:30:00 - 13:00:00 - 12:30:00 - 13:00:00
3 - 22-03-2017 - shift - - 08:30:00 - 16:30:00 - 08:30:00 - 17:30:00
4 - 22-03-2017 - break - - 12:30:00 - 13:00:00 - 12:30:00 - 13:00:00
5 - 23-03-2017 - shift - - 08:00:00 - 16:30:00 - 08:00:00 - 16:30:00


zou ik deze wensen

Code: Selecteer alles

20-03-2017   - 0 - unavailability - Vakantie - 09:00:00 - 16:36:00 - 09:00:00 - 16:36:00
21-03-2017   - 0 - shift - - 09:00:00 - 17:00:00 - 09:00:00 - 16:30:00
         - 1 - break - - 12:30:00 - 13:00:00 - 12:30:00 - 13:00:00
22-03-2017  - 0 - shift - - 08:30:00 - 16:30:00 - 08:30:00 - 17:30:00
         - 1 - break - - 12:30:00 - 13:00:00 - 12:30:00 - 13:00:00


nu moet dit lukken met een soort van usort , dus effe zoeken

of lui als ik ben weten jullie mss dit ook . . .

EDIT : of zoals dit een beetje : https://gist.github.com/mcaskill/baaee44487653e1afc0d

Gebruikersavatar
r2504
Deel van't meubilair
Deel van't meubilair
Berichten: 29214
Lid geworden op: 28 Okt 2003
Bedankt: 1928 keer
Recent bedankt: 13 keer
Uitgedeelde bedankjes: 405 keer

Re: PHP : Loop in een multidimensional associative array

Berichtdoor r2504 » 31 Mar 2017, 11:50

Of gewoon een nested foreach ?

Code: Selecteer alles

foreach ($mijnarray as $element => $mijndata) {
  echo $element;
  foreach ($mijndata as $data) {
    echo " - " . $data ;
  }
  echo "\r\n";
}


Terug naar “Web-en applicatie-ontwikkeling”

Wie is er online

Gebruikers op dit forum: Geen geregistreerde gebruikers en 1 gast