Heim >Backend-Entwicklung >PHP-Tutorial >So verwenden Sie Redis im PHP-Framework CodeIgniter
Dieser Artikel stellt hauptsächlich die Methode zur Verwendung von Redis im PHP-Framework CodeIgniter vor. Jetzt kann ich ihn mit Ihnen teilen
Das Beispiel in diesem Artikel beschreibt, wie das PHP-Framework CodeIgniter Redis verwendet. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:
1. Redis installieren
Zunächst muss der Redis-Dienst (Redis-Datenbank) auf dem Computer installiert sein und ausgeführt werden. Weitere Informationen finden Sie in einem anderen Artikel: http://www.jb51.net/article/138173.htm
2. Installieren Sie phpredis
① Herunterladen
Projektadresse: https://github.com/phpredis/phpredis (Sie können dies ignorieren). Hier wird erwähnt, dass die Windows-Version von phpredis selbst kompiliert werden muss.
Lassen Sie mich über die Umwege sprechen, die ich gemacht habe. Ich habe es von http://windows.php.net/downloads/pecl/snaps/redis/20160319/ heruntergeladen (Sie können das ignorieren), aber ich konnte es nie reparieren Tatsächlich handelt es sich bei diesem vc14 um die 7.0-Version von PHP. Wir benötigen also die 7.1-Version, daher ist sie immer falsch und wir können das Problem erst finden, wenn wir Folgendes finden:
http://pecl.php.net/package-stats.php
Klicken Sie auf die entsprechende Version:
http://pecl.php.net/package/redis/3.1.1/windows
Laden Sie die Version herunter, die 7.1 entspricht.
② Installation
Platzieren Sie die heruntergeladene und dekomprimierte php_redis.dll im Ext des PHP-Interpreters. Sie werden feststellen, dass hier auch MySQL und andere Module platziert sind, suchen Sie ;extension=php_bz2.dll
und fügen Sie , extension=php_redis.dll
③ Konfigurationsinformationen anzeigen
Starten Sie den Server neu oder starten Sie den Computer neu, fügen Sie eine Ansichtsseite hinzu: phpinfo.php unter dem Pfad von index.php und fügen Sie darin hinzu:<?php echo phpinfo(); ?>Besuchen Sie dann
http://yourdomain.com/phpinfo.php, Sie können die Konfigurationsinformationen sehen und nach Informationen suchen, die auf eine erfolgreiche Redis-Konfiguration hinweisen. Wenn ja, ist die Konfiguration abgeschlossen.
3. Betreiben Sie Redis auf PHP-native Weise
// 原生redis类库,不需要config/redis.php $redis = new Redis(); $redis->connect('127.0.0.1',6379); //$redis->set('key10','xx10',20);//第三个参数是存续时间,单位是秒,如果不填则为永久 echo $redis->get('key10');
4. Konfigurieren Sie redis.php
Erstellen Sie die Datei redis.php unter myApplication/config:<?php defined('BASEPATH') OR exit('No direct script access allowed'); /** * Created by PhpStorm. * Date: 2017/2/9 * Time: 13:32 */ $config['socket_type'] = 'tcp'; $config['host'] = '127.0.0.1'; $config['password'] = NULL; $config['port'] = 6379; $config['timeout'] = 0; ?>Diese Konfigurationsdatei ist erforderlich, unabhängig davon, ob Sie die Redis-Bibliothek des Frameworks oder die unten stehende benutzerdefinierte Redis-Bibliothek verwenden. Zusätzlich zur Konfiguration von redis.php müssen Sie auch konfigurieren Der von uns verwendete Cache-Typ ist in application/config/config.php konfiguriert. Die Standardeinstellung lautet wie folgt:
$config['sess_driver'] = 'files'; $config['sess_cookie_name'] = 'ci_session'; $config['sess_expiration'] = 7200; $config['sess_save_path'] = NULL; $config['sess_match_ip'] = FALSE; $config['sess_time_to_update'] = 300; $config['sess_regenerate_destroy'] = FALSE;Wenn wir Redis verwenden, müssen wir es wie folgt konfigurieren:
$config['sess_driver'] = 'redis'; $config['sess_cookie_name'] = 'ci_session'; $config['sess_expiration'] = 0; $config['sess_save_path'] = 'tcp://127.0.0.1:xxxx'; $config['sess_match_ip'] = FALSE; $config['sess_time_to_update'] = 600; $config['sess_regenerate_destroy'] = TRUE;
5. Verwendung der Redis-Bibliothek des CI-Frameworks
// 框架的redis库 $this->load->driver('cache'); $this->cache->redis->save('key11','xx11');//这里注意,第三个参数是时间,在自定义redis库会说明 echo $this->cache->redis->get('key11');
6. Benutzerdefinierte Redis-Klassenbibliothek verwenden
① Rediscli_default.php
Die benutzerdefinierte Redis-Klassenbibliothek kann aus system/libraries/Cache/drivers/Cache_redis.php kopiert und in Rediscli_default.php umbenannt werden. Ansonsten sind keine Änderungen erforderlich . Platzieren Sie es unter myApplication/libraries/Rediscli/drivers/② Rediscli.php
Erstellen Sie eine Rediscli.php unter myApplication/libraries/Rediscli/<?php defined ( 'BASEPATH' ) or exit ( 'No direct script access allowed' ); /** * Created by PhpStorm. * Date: 2017/2/9 * Time: 20:00 */ class Rediscli extends CI_Driver_Library { public $valid_drivers; public $CI; function __construct() { $this->CI = & get_instance (); $this->valid_drivers = array ( 'default' ); } }
③ Rufen Sie
// 自定义类,需要配置 $this->load->driver('rediscli'); if ($this->rediscli->default->is_supported()) { echo $this->rediscli->default->get('key2'); }an
④ Zeit
Diese benutzerdefinierte Redis-Bibliothek ist mit der Framework-Bibliothek identisch, daher konzentrieren wir uns hier darauf.$this->cache->redis->save('key11','xx11',1000);Dies ist der gespeicherte Wert. Der dritte Parameter ist die Zeit, die nicht weggelassen werden kann. Wenn Sie sich die Funktion ansehen, können Sie erkennen, dass der Standardwert dieses Parameters 60 Sekunden beträgt und nicht dauerhaft ist. Daher kann dieser Parameter nicht weggelassen werden.
7. Achten Sie auf diese Situation
// 文本存储 $this->load->driver('cache',array('adapter'=>'redis','backup'=>'file')); $this->cache->save('key5','xx5',10000); echo $this->cache->get('key5');//xx5Die Bedeutung dieses Codes besteht darin, ihn zuerst mit Redis zu speichern und Textspeicher zu verwenden, wenn er nicht gefunden wird. Sie werden feststellen, dass Textdateien in myApplication/cache gespeichert sind und jeder Schlüssel einen Text enthält. Da kein Fehler gemeldet wird, wissen Sie möglicherweise eine Zeit lang nicht, wo sich diese Daten befinden. Es ist besser, dies seltener zu verwenden, schließlich wird Redis für eine schnellere Geschwindigkeit verwendet. Verwandte Empfehlungen:
So installieren und verwenden Sie PHP Framework Slim
Beispielcode für das Umschreiben des PHP-Frameworks Yaf Routing
Das obige ist der detaillierte Inhalt vonSo verwenden Sie Redis im PHP-Framework CodeIgniter. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!