Heim  >  Artikel  >  Backend-Entwicklung  >  CodeIgniter verwendet ausführlich erläuterte Redis-Schritte

CodeIgniter verwendet ausführlich erläuterte Redis-Schritte

php中世界最好的语言
php中世界最好的语言Original
2018-05-16 16:06:572242Durchsuche

Dieses Mal erkläre ich Ihnen ausführlich die Schritte zur Verwendung von Redis mit CodeIgniter. Was sind die Vorsichtsmaßnahmen für die Verwendung von Redis mit CodeIgniter?

1. Redis installieren

Zunächst muss der Redis-Dienst (Redis-Datenbank) auf dem Computer installiert und ausgeführt werden , siehe einen 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 benötigt wird Selbstverständlich können wir das nicht selbst zusammenstellen. So rücksichtslos.

Lassen Sie mich über die Umwege sprechen, die ich unternommen habe. Ich habe es von http://windows.php.net/downloads/pecl/snaps/redis/20160319/ heruntergeladen (Sie können das ignorieren), aber ich habe es trotzdem Ich kann es nicht zum Laufen bringen. Okay, eigentlich ist dieses vc14 die 7.0-Version von PHP, und was wir brauchen, ist die 7.1-Version, also war es immer falsch und ich konnte das Problem nicht finden, bis ich Folgendes gefunden habe:

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 entsprechende Version 7.1 herunter.

② Installieren Sie

Fügen Sie die heruntergeladene und dekomprimierte php_redis.dll in die Ext des PHP-Interpreters ein, und Sie werden MySQL und andere finden Hier werden auch Module platziert. Öffnen Sie dann php.ini, suchen Sie ;extension=php_bz2.dll, fügen Sie extension=php_redis.dll hinzu.

ist der Kopf des Erweiterungskonfigurationsbereichs und fügen Sie die Redis-Konfiguration hinzu. Die Installation ist abgeschlossen.

③ Konfigurationsinformationen anzeigen

Starten Sie den Server neu oder starten Sie den Computer neu, fügen Sie eine Ansichtsseite unter dem Pfad von index.php hinzu: phpinfo. php, in Hinzufügen:

<?php
 echo phpinfo();
?>

und besuchen Sie dann http://yourdomain.com/phpinfo.php. Sie können die Konfigurationsinformationen sehen und nach Informationen zur erfolgreichen Redis-Konfiguration suchen , die Konfiguration ist abgeschlossen.

3. Betreiben Sie Redis auf PHP-native Weise

// 原生redis类库,不需要config/redis.php
$redis = new Redis();
$redis->connect(&#39;127.0.0.1&#39;,6379);
//$redis->set(&#39;key10&#39;,&#39;xx10&#39;,20);//第三个参数是存续时间,单位是秒,如果不填则为永久
echo $redis->get(&#39;key10&#39;);

4. Konfigurieren Sie redis.php

Erstellen Sie die Datei redis.php unter myApplication/config:

<?php
defined(&#39;BASEPATH&#39;) OR exit(&#39;No direct script access allowed&#39;);
/**
 * Created by PhpStorm.
 * Date: 2017/2/9
 * Time: 13:32
 */
$config[&#39;socket_type&#39;] = &#39;tcp&#39;;
$config[&#39;host&#39;] = &#39;127.0.0.1&#39;;
$config[&#39;password&#39;] = NULL;
$config[&#39;port&#39;] = 6379;
$config[&#39;timeout&#39;] = 0;
?>

Ganz gleich, ob Sie die Redis-Bibliothek des Frameworks oder die folgende benutzerdefinierte Redis-Bibliothek verwenden, Sie benötigen diese Konfigurationsdatei .

Zusätzlich zur Konfiguration von redis.php muss der von uns verwendete Cache-Typ auch in

application/config/config.php konfiguriert werden. Die Standardeinstellung lautet wie folgt:

$config[&#39;sess_driver&#39;] = &#39;files&#39;;
$config[&#39;sess_cookie_name&#39;] = &#39;ci_session&#39;;
$config[&#39;sess_expiration&#39;] = 7200;
$config[&#39;sess_save_path&#39;] = NULL;
$config[&#39;sess_match_ip&#39;] = FALSE;
$config[&#39;sess_time_to_update&#39;] = 300;
$config[&#39;sess_regenerate_destroy&#39;] = FALSE;

Wenn wir Redis verwenden, müssen wir es wie folgt konfigurieren:

$config[&#39;sess_driver&#39;] = &#39;redis&#39;;
$config[&#39;sess_cookie_name&#39;] = &#39;ci_session&#39;;
$config[&#39;sess_expiration&#39;] = 0;
$config[&#39;sess_save_path&#39;] = &#39;tcp://127.0.0.1:xxxx&#39;;
$config[&#39;sess_match_ip&#39;] = FALSE;
$config[&#39;sess_time_to_update&#39;] = 600;
$config[&#39;sess_regenerate_destroy&#39;] = TRUE;

5. Verwenden Sie die Redis-Bibliothek des CI-Frameworks

// 框架的redis库
$this->load->driver(&#39;cache&#39;);
$this->cache->redis->save(&#39;key11&#39;,&#39;xx11&#39;);//这里注意,第三个参数是时间,在自定义redis库会说明
echo $this->cache->redis->get(&#39;key11&#39;);

6. Verwenden Sie eine benutzerdefinierte Redis-Klassenbibliothek

① Rediscli_default.php

Die benutzerdefinierte Redis-Klassenbibliothek kann sein Von system/libraries/ heruntergeladen. Erstellen Sie eine Kopie von Cache/drivers/Cache_redis.php und benennen Sie sie in Rediscli_default um. Andernfalls müssen Sie keine weiteren Methoden hinzufügen. Platzieren Sie es unter myApplication/libraries/Rediscli/drivers/

② Rediscli.php

Erstellen Sie eine Rediscli.php unter myApplication/libraries/Rediscli/

<?php
defined ( &#39;BASEPATH&#39; ) or exit ( &#39;No direct script access allowed&#39; );
/**
 * 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 (
   &#39;default&#39;
  );
 }
}

③ Aufruf

// 自定义类,需要配置
$this->load->driver(&#39;rediscli&#39;);
if ($this->rediscli->default->is_supported())
{
 echo $this->rediscli->default->get(&#39;key2&#39;);
}

④ Zeit

Diese benutzerdefinierte Redis-Bibliothek ist dieselbe wie die Framework-Bibliothek und wird hier erläutert.

$this->cache->redis->save(&#39;key11&#39;,&#39;xx11&#39;,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(&#39;cache&#39;,array(&#39;adapter&#39;=>&#39;redis&#39;,&#39;backup&#39;=>&#39;file&#39;));
$this->cache->save(&#39;key5&#39;,&#39;xx5&#39;,10000);
echo $this->cache->get(&#39;key5&#39;);//xx5

Die Bedeutung dieses Codes besteht darin, ihn zuerst mit Redis zu speichern gefunden, Textspeicher verwenden. 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 diese Daten vorhanden sind.

Es ist besser, dies seltener zu verwenden, schließlich wird Redis für eine schnellere Geschwindigkeit verwendet.

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!

Empfohlene Lektüre:

Analyse der tatsächlichen Fallnutzung der PHP-Schließung

PHP verwendet reguläre Ausdrücke, um Provinzen und Städte abzugleichen

Das obige ist der detaillierte Inhalt vonCodeIgniter verwendet ausführlich erläuterte Redis-Schritte. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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