Heim > Backend-Entwicklung > PHP-Tutorial > Das PHP-Framework CodeIgniter verwendet Redis, um die Methode zu erklären

Das PHP-Framework CodeIgniter verwendet Redis, um die Methode zu erklären

jacklove
Freigeben: 2023-04-01 20:40:02
Original
1927 Leute haben es durchsucht

In diesem Artikel wird hauptsächlich die Methode zur Verwendung von Redis im PHP-Framework CodeIgniter vorgestellt und die Installation und Einstellungen von Redis anhand von Beispielen sowie die damit verbundenen Bedienkenntnisse und Vorsichtsmaßnahmen für die Verwendung von Redis in CodeIgniter analysiert siehe es

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. Installieren Sie Redis

Zuallererst der Redis-Dienst ( Die Redis-Datenbank muss auf dem Computer installiert und ausgeführt werden. Weitere Informationen finden Sie in einem anderen Artikel: //www.jb51.net/article/138173.htm

2. Installieren Sie phpredis

① Herunterladen

Projektadresse: https://github.com/phpredis/phpredis (Sie können dies ignorieren), das wird hier erwähnt Die Windows-Version von phpredis muss natürlich selbst kompiliert werden. Wir können nicht so rücksichtslos sein.

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 dieser vc14 Version 7.0 von PHP, und was wir brauchen, ist Version 7.1, 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 hinzu: phpinfo.php unter dem Pfad von index.php, fügen Sie hinzu:

<?php
 echo phpinfo();
?>
Nach dem Login kopieren

Besuchen Sie dann http://yourdomain.com/phpinfo.php, um die Konfigurationsinformationen anzuzeigen und nach Informationen darüber zu suchen, ob eine Redis-Konfiguration vorliegt erfolgreich, wenn ja, ist die Konfiguration abgeschlossen.

3. Redis nativ in PHP betreiben

// 原生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;);
Nach dem Login kopieren

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;
?>
Nach dem Login kopieren

Nein egal Diese Konfigurationsdatei ist erforderlich, unabhängig davon, ob Sie die Redis-Bibliothek des Frameworks oder die folgende benutzerdefinierte Redis-Bibliothek verwenden.

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;
Nach dem Login kopieren

Wenn wir Redis verwenden, dann konfigurieren Sie es wie folgt:

$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;
Nach dem Login kopieren

5 , unter Verwendung der 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;);
Nach dem Login kopieren

6. Verwendung einer benutzerdefinierten Redis-Klassenbibliothek

① Rediscli_default.php

Die benutzerdefinierte Redis-Klassenbibliothek kann aus system/libraries/Cache/drivers/Cache_redis.php kopiert und in Rediscli_default umbenannt werden. php wird auch der Klassenname in Rediscli_default geändert, es sind keine weiteren Änderungen erforderlich, Sie können selbst weitere 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;
  );
 }
}
Nach dem Login kopieren

③ Anruf

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

④ Zeit

Diese benutzerdefinierte Redis-Bibliothek ist mit der Framework-Bibliothek identisch, daher werden wir uns hier darauf konzentrieren.

$this->cache->redis->save(&#39;key11&#39;,&#39;xx11&#39;,1000);
Nach dem Login kopieren

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
Nach dem Login kopieren

Die Bedeutung dieses Codes ist , Verwenden Sie zunächst Redis zum Speichern. Wenn nicht gefunden, verwenden Sie Textspeicher. 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.

Artikel, die Sie interessieren könnten:

Erklärung der durch PHP-Programmierung implementierten TCP-Server- und Clientfunktionen

Erklärung, wie man den regelmäßigen Abgleich von Provinzen und Städten einfach in PHP implementiert

PHP-Abschlussdefinition und Verwendung einfacher Beispiel-PHP-Kenntnisse

Das obige ist der detaillierte Inhalt vonDas PHP-Framework CodeIgniter verwendet Redis, um die Methode zu erklären. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage