zu bekommen Ich bin auf der Modellseite fest, wo ich eine Schleife schreiben muss, die einige bestimmte Werte von mysql auswählt. Die Tabelle sieht wie folgt aus:Schleife, um mysql Werte mit php codenigniter
0 2016-11-06 08:36:19
7300 2016-11-06 08:43:11
19200 2016-11-06 08:43:12
35980 2016-11-06 08:43:17
45600 2016-11-06 08:43:21
45820 2016-11-06 08:43:27
45840 2016-11-06 08:43:28
45860 2016-11-06 08:43:29
26940 2016-11-06 08:44:34
19760 2016-11-06 08:44:36
3440 2016-11-06 08:44:38
0 2016-11-06 08:44:44
1400 2016-11-06 08:46:00
7120 2016-11-06 08:46:04
11240 2016-11-06 08:46:06
11220 2016-11-06 08:46:10
11240 2016-11-06 08:46:11
11220 2016-11-06 08:46:12
3940 2016-11-06 08:46:51
0 2016-11-06 08:46:56
Grundsätzlich ist dieser Einträge aus einem Gewichtungs Maschine erzeugt sind und in meiner Datenbank funktioniert wie folgt eingefügt:
Wenn etwas auf der Waage ist, die Einträge werden von 0 auf das tatsächliche Gewicht des Objekts auf der Gewichtsmaschine aktualisiert, aber bis sie das reale Gewicht erreichen, bekomme ich alle Werte hoch. Wenn der Unterschied auf 3-4 die Einträge weniger als 50kg ist, sind wir am realen Gewicht. Dann wird das Gewicht wieder auf 0 fallen und es wird der gleiche Zyklus beginnen, wenn etwas darauf ist. Aus dem obigen Beispiel sind dies die Einträge Ich bin interessiert an:
45840 2016-11-06 08:43:28
11220 2016-11-06 08:46:10
Ich dachte jeden Eintrag mit dem folgenden zu vergleichen, und wenn die Differenz kleiner als 50 kg für 3 Einträge, holen Sie sich einen der Einträge und machen Sie so weiter für andere, aber ich weiß nicht, wie genau ich das in PHP machen kann.
$sql = "SELECT weight, added_date FROM balance_events WHERE added_date BETWEEN '".$from_date."' AND '".$to_date."'";
$query = $this->db->query($sql);
$result = $query->result();
for weight in result:
// TO DO the loop
return $result;
Wie mache ich meine for-Schleife, um die gewünschte Ausgabe zu erhalten? Gibt es auch eine Möglichkeit, den Zeitstempel auf dem added_date zu überprüfen, um die Zeit des Gewichtsereignisses (0 bis 0) auf mehr als 5 Minuten zu beschränken und diejenigen zu ignorieren, deren Dauer weniger als 5 Minuten beträgt?
Diese erhalten nur 1 Wert, für jeden gewünschten Zeitraum ein, aber wie in dem Beispiel, das ich brauche/jedes Intervall von 0 bis 0 1 Wert zu erhalten, wenn ich mit meinem Beispiel versuchen, dies wird nur dann ausgegeben, 45860 2016-11 -06 08:43:29, ich denke, dass Sie jedes Mal zurücksetzen müssen, wenn Sie einen Wert erhalten und eine Art Liste erstellen. – Rommel