Heim > PHP-Framework > Laravel > Detaillierte Erklärung des PHP-Laravel-Cache-Mechanismus

Detaillierte Erklärung des PHP-Laravel-Cache-Mechanismus

WBOY
Freigeben: 2022-11-01 15:24:51
nach vorne
1595 Leute haben es durchsucht

Dieser Artikel bringt Ihnen relevantes Wissen über laravel, der hauptsächlich den Cache in Laravel vorstellt, der uns drei Caching-Mechanismen bietet: Redis, Memcache und den zugehörigen Inhalt des Dateicaches des Frameworks, wie folgt: Schauen wir uns das an , hoffe es hilft allen.

【Verwandte Empfehlung: Laravel-Video-Tutorial

Der Cache in Laravel bietet uns drei Caching-Mechanismen.

Redis, Memcache und Framework-Datei-Cache.

Hier ist vor allem der Dateicache im Cache zu beachten.

1. Greifen Sie auf mehrere Cache-Speicher zu. Mit der

Cache-Fassade können Sie mit der

store-Methode auf verschiedene Cache-Speicher zugreifen. Der an die store-Methode übergebene Schlüssel ist das Konfigurationsarray stores Cache Konfigurationsdatei. Der entsprechende Speicher ist aufgeführt in:

$value = Cache::store('file')->get('foo');
Cache::store('redis')->put('bar', 'baz', 600);  // 10分钟
Nach dem Login kopieren
2. Holen Sie sich die Daten aus dem Cache 1. Holen Sie sich die Daten und legen Sie den Standardwert fest

(1): Normalwert

$value = Cache::get('key');
Nach dem Login kopieren

(2 ): Wenn es nicht existiert, mit dem Standardwert

$value = Cache::get('key', 'default');
Nach dem Login kopieren

(3): Schließvorgang verwenden, mit dem Standardwert

$value = Cache::get('key', function() {
    return DB::table(...)->get();
});
Nach dem Login kopieren
2. Überprüfen Sie, ob das Cache-Element vorhanden ist.

has-Methode wird verwendet, um festzustellen, ob der Cache vorhanden ist Element existiert, wenn der Wert null oder falsch ist. Diese Methode gibt false zurück:

if (Cache::has('key')) {
    //
}
Nach dem Login kopieren
3. Werterhöhungs-/-verringerungsmethoden können verwendet werden, um den ganzzahligen Wert im Cache anzupassen. Beide Methoden können einen zweiten Parameter erhalten, um die Anzahl der Inkremente und Dekremente im Cache-Elementwert anzugeben:

Cache::increment('key');
Cache::increment('key', $amount);
Cache::decrement('key');
Cache::decrement('key', $amount);
Nach dem Login kopieren

4. Get & Store

Manchmal möchten Sie möglicherweise das Cache-Element abrufen, das angeforderte Cache-Element ist jedoch nicht vorhanden Speichern Sie es mit einem Standardwert. Beispielsweise möchten Sie möglicherweise alle Benutzer aus dem Cache abrufen oder, wenn sie nicht vorhanden sind, sie aus der Datenbank abrufen und zum Cache hinzufügen. Dies können Sie mithilfe der Cache::remember-Methode tun:

$value = Cache::remember('users', $seconds, function() {
    return DB::table('users')->get();
});
Nach dem Login kopieren

Wenn das Cache-Element nicht vorhanden ist, wird der an die Erinnerungsmethode übergebene Abschluss ausgeführt und das Ergebnis im Cache gespeichert.

Sie können auch die Methode „rememberForever“ verwenden, um Daten aus dem Cache abzurufen oder dauerhaft zu speichern:

$value = Cache::rememberForever('users', function() {
    return DB::table('users')->get();
});
Nach dem Login kopieren

5. Wenn Sie ein Cache-Element aus dem Cache abrufen und es dann löschen müssen, können Sie die verwenden pull-Methode und get Die Methode ist dieselbe. Wenn das Cache-Element nicht vorhanden ist, geben Sie null zurück:

$value = Cache::pull('key');
Nach dem Login kopieren

3. Speichern Sie die Daten im Cache

1. Rufen Sie die gespeicherten Daten ab.

Sie können die Put-Methode verwenden Cache-Fassade zum Speichern von Daten im Cache. Wenn Sie Daten im Cache speichern, müssen Sie die Zeit (in Sekunden) angeben, für die die Daten zwischengespeichert werden sollen:

Cache::put('key', 'value', $seconds);
Nach dem Login kopieren

Wenn keine Cache-Zeit an die Put-Methode übergeben wird, ist das Cache-Element dauerhaft gültig:

Cache::put('key', 'value');
Nach dem Login kopieren

In Zusätzlich zur Übergabe der Ablaufzeit des Cache-Elements können Sie auch eine PHP-Datetime-Instanz übergeben, die die Gültigkeitszeit des Cache-Elements darstellt:

$expiresAt = Carbon::now()->addMinutes(10);
Cache::put('key', 'value', $expiresAt);
Nach dem Login kopieren

2. Daten speichern, wenn der Cache nicht vorhanden ist

Die Add-Methode fügt nur Daten hinzu den Cache, wenn das Cache-Element nicht vorhanden ist, wenn die Daten erfolgreich hinzugefügt wurden. Geben Sie „true“ zum Cache zurück, andernfalls geben Sie „false“ zurück:

Cache::add('key', 'value', $seconds);
Nach dem Login kopieren

3. Die Methode „Forever“ wird verwendet, um Daten dauerhaft im Cache zu speichern Werte müssen manuell über die Forget-Methode aus dem Cache entfernt werden:

Cache::forever('key', 'value');
Nach dem Login kopieren

4. From So entfernen Sie Daten aus dem Cache

Sie können die Forget-Methode auf der Cache-Fassade verwenden, um Cache-Elementdaten aus dem Cache zu entfernen:

Cache::forget('key');
Nach dem Login kopieren

Sie können Cache-Elemente auch entfernen, indem Sie die Cache-Gültigkeitsdauer auf 0 oder eine negative Zahl setzen:

Cache::put('key', 'value', 0);
 
Cache::put('key', 'value', -5);
Nach dem Login kopieren

Wenn Sie alle Caches löschen möchten, können Sie dies mit der

-Methode tun:

Cache::flush();
Nach dem Login kopieren
Das Obige ist im Grunde die Vorgehensweise bei Laravel Framework arbeitet mit Datei-Caching

[Verwandte Empfehlungen:

Laravel-Video-Tutorial

]

Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung des PHP-Laravel-Cache-Mechanismus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:jb51.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage