Heim > Artikel > Backend-Entwicklung > Dynamisches Caching (S-Methode) und schnelles Caching (F-Methode) in ThinkPHP
Die Standard-Caching-Methode des Systems ist Datei-Caching. Wir können andere Caching-Methoden in der Projektkonfigurationsdatei definieren, beispielsweise die Standard-Caching-Methode in Xcache ändern (natürlich muss Ihre Umgebung Xcache unterstützen)
Für eine große Anzahl von Dateiproblemen im Cache-Verzeichnis im Dateimodus-Caching aufgrund zu vieler zwischengespeicherter Daten bietet ThinkPHP auch eine Lösung, die das Zwischenspeichern von Hash-Unterverzeichnissen ermöglichen kann.
'DATA_CACHE_SUBDIR'=>true
Sie können auch die Ebene des Hash-Verzeichnisses festlegen, zum Beispiel
'DATA_PATH_LEVEL'=>2
Das können Sie Cache-Identifikation verwenden Der Hash erstellt automatisch mehrere Ebenen von Unterverzeichnissen für das Caching.
Die S-Methode unterstützt die Cache-Gültigkeitsdauer. In vielen Fällen benötigen wir das Konzept der Gültigkeitsdauer möglicherweise nicht, oder das Caching im Dateimodus kann die Anforderungen erfüllen, daher bietet das System auch eine schnelle Caching-Methode F speziell für den Dateimodus. Verfahren. Die F-Methode kann nur zum Zwischenspeichern einfacher Datentypen verwendet werden und unterstützt keine Gültigkeitszeiträume und Zwischenspeicherung von Objekten. Verwenden Sie Folgendes:
// Datendaten schnell zwischenspeichern, die standardmäßig im Verzeichnis DATA_PATH gespeichert werden
F('data',$ data);
//Datendaten schnell zwischenspeichern und im angegebenen Verzeichnis speichern
F('data',$data,TEMP_PATH);
F('user/ data',$data);
//Zwischengespeicherte Daten löschen
F('data',null);
//Zwischengespeicherte Daten abrufen
$data=F('data'); >Konfigurationsdatei config.php
//Dynamischer Cache, Cache-Dateien existieren in RuntimeTemp
'DATA_CACHE_TYPE'=>'file',
'DATA_CACHE_TIME'=>'3600',
// 'DATA_CACHE_SUBDIR'=>true,/ /Unterverzeichnis öffnen
//'DATA_CACHE_LEVEL'=>3,//Legen Sie die Ebene des Unterverzeichnisses fest
Aktionsdatei:
Funktionsansicht(){
/ /Cache
//$ Cache=Cache::getInstance('Cache-Methode','Cache-Parameter');
gt;60 ));
//$cache->set('name','value'); oder $cache->name='value';
//$value=$cache->get ('name'); Oder $value=$cache->name;
Name ',' Daten ',' 3600 ',' Typ ') schnelle Cache-Methode
$ user = m (' haodetong ');
$ value = s (' list ');
if(empty($value)){
$list=$user->select();
S('list',$list,3600);
echo ' Dies ist eine Datei, die direkt aus der Datenbank gelesen wird';
dump($list);
}else{
echo 'Dies ist eine zwischengespeicherte Datei';
dump($value);
}
}
Wie unten beim ersten Besuch gezeigt:
Wie unten nach erneuter Auffrischung gezeigt:
Das Obige stellt das dynamische Caching (S-Methode) und das schnelle Caching (F-Methode) in ThinkPHP vor, einschließlich der relevanten Inhalte. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.