LTB
Hey, ich habe folgendes Problem:
Ich möchte die Inhalte einer Datenbank in einem Cache speichern. Und das möchte ich nicht mit dem Frontend 'Output' sondern 'Core', also entsprechend für Datenbankabfragen, lösen. Ich möchte nämlich nicht lediglich die Ausgabe im Browser speichern sondern die Daten ansich in einem Array.
Das funktioniert alles soweit, jetzt möchte ich es aber so realisieren, dass der Cache und die sich darin befindlichen Datenbankinhalte erneuern, wenn sie in der DB aktualisiert wurden.
Angehen möchte ich das ganze, indem ich dem Cache-Inhalt den Timestamp mit übergebe wann die Daten aktualisiert wurden. Bei jedem Aufruf der Seite wird eine dann der Timestamp aus der Datenbank der entsprechenden Tabelle abgefragt. Und wenn dieser größer ist, als der Timestamp in dem Cache, dann wurde der Inhalt aktualisiert und wird dann anschließend neu in den Cache gespeichert.
### Anzumerken ist vielleicht, dass ich das gleiche Verfahren bereits für einen Bereich auf der Seite verwende, wo Dateien (also der Inhalt) per Include eingefügt werden, sodass sie nicht immer neu aufbereitet, sondern nur aus dem Cache geholt werden müssen. Das ganze habe ich mit Tags gelöst, indem ich dem Cache den Timestamp der Datei als Tag übergebe und hinterher beim laden des Caches überprüfe ob der Timestamp der Datei ungleich dem aus dem Cache ist. Und wenn ja wurde die Datei aktualisiert und der Cache wird erneuert. Habe das mit Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG gemacht.
Soweit dazu..###
Naja auf jeden Fall würde ich gerne ähnliches für das erste Beispiel umsetzen und würde gerne wissen wie man an den Timestamp einer Tabelle in einer Datenbank kommt damit man weiß wann sie zuletzt aktualisiert/bearbeitet wurde.
Danke im voraus. ^^
P.S.: Ich setze das mit Zend Framework um, aber für das Problem was sich mir gerade stellt reicht auch normales PHP. ^^
Ich möchte die Inhalte einer Datenbank in einem Cache speichern. Und das möchte ich nicht mit dem Frontend 'Output' sondern 'Core', also entsprechend für Datenbankabfragen, lösen. Ich möchte nämlich nicht lediglich die Ausgabe im Browser speichern sondern die Daten ansich in einem Array.
Das funktioniert alles soweit, jetzt möchte ich es aber so realisieren, dass der Cache und die sich darin befindlichen Datenbankinhalte erneuern, wenn sie in der DB aktualisiert wurden.
Angehen möchte ich das ganze, indem ich dem Cache-Inhalt den Timestamp mit übergebe wann die Daten aktualisiert wurden. Bei jedem Aufruf der Seite wird eine dann der Timestamp aus der Datenbank der entsprechenden Tabelle abgefragt. Und wenn dieser größer ist, als der Timestamp in dem Cache, dann wurde der Inhalt aktualisiert und wird dann anschließend neu in den Cache gespeichert.
### Anzumerken ist vielleicht, dass ich das gleiche Verfahren bereits für einen Bereich auf der Seite verwende, wo Dateien (also der Inhalt) per Include eingefügt werden, sodass sie nicht immer neu aufbereitet, sondern nur aus dem Cache geholt werden müssen. Das ganze habe ich mit Tags gelöst, indem ich dem Cache den Timestamp der Datei als Tag übergebe und hinterher beim laden des Caches überprüfe ob der Timestamp der Datei ungleich dem aus dem Cache ist. Und wenn ja wurde die Datei aktualisiert und der Cache wird erneuert. Habe das mit Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG gemacht.
Soweit dazu..###
Naja auf jeden Fall würde ich gerne ähnliches für das erste Beispiel umsetzen und würde gerne wissen wie man an den Timestamp einer Tabelle in einer Datenbank kommt damit man weiß wann sie zuletzt aktualisiert/bearbeitet wurde.
Danke im voraus. ^^
P.S.: Ich setze das mit Zend Framework um, aber für das Problem was sich mir gerade stellt reicht auch normales PHP. ^^