In der Firebase-Echtzeitdatenbank ist die Aufrechterhaltung genauer Zeitstempel für die Bestellung, Nachverfolgung von Änderungen und die Gewährleistung der Datenintegrität von entscheidender Bedeutung. Wenn Sie neue Werte über das Kontrollfeld der Datenbank hinzufügen, möchten Sie möglicherweise das aktuelle Datum und die aktuelle Uhrzeit automatisch erfassen. In diesem Artikel wird erläutert, wie Sie dies mit ServerValue.TIMESTAMP erreichen.
Die beste Vorgehensweise besteht darin, Ihren Zeitstempel mit ServerValue.TIMESTAMP als TIMESTAMP-Datentyp zu speichern. Dadurch wird sichergestellt, dass die Datenbank den Zeitstempel automatisch festlegt, wenn der neue Wert hinzugefügt wird.
DatabaseReference ref = FirebaseDatabase.getInstance().getReference(); Map map = new HashMap(); map.put("timestamp", ServerValue.TIMESTAMP); ref.child("yourNode").updateChildren(map);
Beim Abrufen des Zeitstempels wird dieser als Long-Wert gespeichert. Um Datum und Uhrzeit in einem für Menschen lesbaren Format zu erhalten, können Sie die folgende Methode verwenden:
public static String getTimeDate(long timestamp){ try{ DateFormat dateFormat = getDateTimeInstance(); Date netDate = (new Date(timestamp)); return dateFormat.format(netDate); } catch(Exception e) { return "date"; } }
Bearbeiten: Um den Zeitstempel ordnungsgemäß in einer Modellklasse zu speichern, können Sie definieren ein Feld vom Typ Map
public class YourModelClass { private Map<String, String> timestamp; @ServerTimestamp public void setTimestamp(Map<String, String> timeStamp) {this.timestamp= timestamp;} public Map<String, String> getTimestamp() {return timestamp;} }
Ein anderer Ansatz besteht darin, eine Cloud-Funktion in Firebase zu erstellen, die den aktuellen Server-Zeitstempel zurückgibt. Sie können diesen Zeitstempel dann aus Ihrem Frontend-Code abrufen.
exports.currentTime = functions.https.onRequest((req, res) => { res.send({"timestamp":new Date().getTime()}) })
Diese Methode bietet eine konsistente und zuverlässige Möglichkeit, den Server-Zeitstempel ohne Benutzerinteraktion abzurufen.
Das obige ist der detaillierte Inhalt vonWie kann ich Zeitstempel automatisch zu Firebase-Echtzeitdatenbankeinträgen hinzufügen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!