2016-03-18 26 views
0

Meine Select-Abfrage ($ sql = "wählen Tag, Stunde, Dollar von db";) Ausgabe besteht aus 744 Zeilen, eine für jede Stunde eines 31-Tage-Monats. Ich schließe ich sie und es so (Kommata zur besseren Lesbarkeit):PHP-Abfrage Abfrage AFTER Abfrage

day 1, hour 1, dollars 300 
day 1, hour 2, dollars 310 
day 1, hour 3, dollars 299 
/*etc., up to row 744, which looks like the following */ 
day 31, hour 24, dollars 200 

So, 31 Tage bei 24 Stunden pro Tag, alle in 744 Zeilen.

in PHP geschrieben, ich möchte, dass die Zeilen, die von Tag zu gruppieren, so dass ich

da 1: 
hour 1, dollars 300 
hour 2, dollars 310 
hour 3, dollars 299 
.. 
hour 24, dollars 299 
31: 
24, 200 

Um die day als ein Niveau oberhalb hour und dollars gesetzt, habe ich versucht eine Reihe zu machen, etwa so:

$arr[] = array($day =>['hour' => $hour, 'dollars' => $dollars]); 

print_r($arr) erzeugt dies:

Array 
(
    [1] => Array 
     (
      [hour] => 1 
      [dollars] => 300 
     ) 

) 
Array 
(
    [1] => Array 
     (
      [hour] => 2 
      [dollars] => 310 
     ) 

) 
Array 
(
    [1] => Array 
     (
      [hour] => 3 
      [dollars] => 299 
     ) 

) 

// etc. up to: 

Array 
(
    [31] => Array 
     (
      [hour] => 24 
      [dolars] => 200 
     ) 

) 

... aber was ich brauche, ist so etwas wie dieses:

Array 
(
    [1] => 
     [ 
      [hour] => 1 
      [dollars] => 300 
     ], 
     [ 
      [hour] => 2 
      [dollars] => 310 
     ], 
     [ 
      [hour] => 3 
      [dollars] => 299 
     ], 
/*etc., up to */ 
     [ 
      [hour] => 24 
      [dollars] => 200 
     ] 
) 

Irgendwelche Vorschläge, wie ich kann ich das tun?

+0

A 1 von der Anzahl der Dimensionen Versuchen Sie es tun sollten. Um Probleme beim Verwalten von Indizes zu vermeiden, erstellen Sie zuerst die Arrays für jeden Tag und fügen Sie dann diese Arrays zum globalen Array hinzu. – Loufylouf

+0

'$ arr [$ Tag] [] = ['Stunde' => $ Stunde, 'Dollar' => $ Dollar];' – fusion3k

Antwort

0

dieses

$arr[$day] []= array('hour' => $hour, 'dollars' => $dollars); 
Verwandte Themen