Supportnet / Forum / Skripte(PHP,ASP,Perl...)
Probleme mit Array
Frage
Hallo zusammen,
ich habe ein Problem damit, einen Algorithmus für folgendes Ziel zu entwickeln. Gegeben habe ich ein Array in der Form:
[code]
array(12) {
[0]=> array(2) { [0]=> string(2) "25" [1]=> string(10) "1105513200" }
[1]=> array(2) { [0]=> string(4) "28.5" [1]=> string(10) "1108796400" }
[2]=> array(2) { [0]=> string(2) "26" [1]=> string(10) "1110092400" }
[3]=> array(2) { [0]=> string(2) "30" [1]=> string(10) "1112770800" }
[4]=> array(2) { [0]=> string(4) "32.8" [1]=> string(10) "1113807600" }
}
[/code]
Also ein zweidimensionales Array, das an Stelle [0] einen Wert und an Stelle [1] einen Timestamp beinhaltet. Mein Ziel ist es nun, dass ich überprüfen will, ob es mehrere Werte in einem Monat gibt und wenn ja, will ich den Mittelwert ermitteln, so dass ich am Ende nur je einen Wert in einem Monat habe. Wenn es in einem Monat keinen Wert gibt, dann will ich den Wert Null speichern. Am Ende soll jedenfalls ein eindimensionales Array rauskommen, welches genau 12 Werte für ein Kalenderjahr enthält (also entweder eine Null, einen Mittelwert oder einen normalen Wert).
Wenn dieses übergebene Array z.B. über zwei Jahre, (also z.b. Nov04 bis Mai05 geht, dann brauche ich je ein Array pro Kalenderjahr mit je 12 Werten drin.
Meinen Code erspare ich euch, weil ich immer wieder in eine Sackgasse komme und ich einfach neue Sichtweisen brauche.
Alternativ hatte ich auch schon versucht, das übergebene Array in der Form zu nutzen:
[code]
$array[timestamp]=wert
[/code]
Also ein eindimensinales Array, wobei der timestamp der Schlüssel und der Wert halt der Wert ist :-). Aber auch das brachte mich zu keiner Lösung.
Ich habe schon so viel rumprobiert, aber ich bekomme es echt nicht hin, mir eine Vorgehensweise zu überlegen :-(
Ich hoffe, ihr habt ein paar Tipps für mich?
Danke,
Kathrin
Antwort 1 von Risatara2
Hi,
Benutze doch ein Hilfsarray. Das heißt erstelle dir ein Array mit 12*2 Feldern.
Du machst eine Foreach-schleife, in der du den Monat ausliest. Dann addierst du das zu dem entsprechenden Feld (zB $monate[1][wert] ), und addierst zu dem anderen Feld eine eins, damit du die Anzahl der addierten Werte hast, für einen Durchschnitt.
Wenn du damit was anfangen kannst, bitte Rückmeldung.
Risatara
Benutze doch ein Hilfsarray. Das heißt erstelle dir ein Array mit 12*2 Feldern.
Du machst eine Foreach-schleife, in der du den Monat ausliest. Dann addierst du das zu dem entsprechenden Feld (zB $monate[1][wert] ), und addierst zu dem anderen Feld eine eins, damit du die Anzahl der addierten Werte hast, für einen Durchschnitt.
Wenn du damit was anfangen kannst, bitte Rückmeldung.
Risatara

