Si vous souhaitez bien utiliser le stockage clé-valeur Redis dans le framework PHP Yii2, vous devez d'abord recommander la bibliothèque officielle Github yii2-redis. Cette bibliothèque peut nous aider à utiliser Redis dans le framework Yii2. Elle prend en charge les modes mise en cache, Session et ActiveRecord.
Installez la bibliothèque yii2-redis
Il est recommandé d'utiliser composer pour installer la bibliothèque yii2-redis et exécuter
php composer.phar require --prefer-dist yiisoft/yii2-redis:"~2.0.0"
"yiisoft/yii2-redis": "~2.0.0"
Configurer redis
Pour utiliser correctement cette extension, vous devez configurer la classe Connection dans le fichier de configuration de votre application, généralement Par exemple, le fichier de configuration est configweb.php. Ajoutez le projet redis à votre composant, comme suit :return [ //.... 'components' => [ 'redis' => [ 'class' => 'yii\redis\Connection', 'hostname' => 'localhost', 'port' => 6379, 'database' => 0, ], ] ];
Exemple
Utilisation simple
Regardons d'abord la manière la plus simple d'utiliser le code redis :$redis = Yii::$app->redis; $key = 'username'; if ($val = $redis->get($key)) { return ['redis' => $val]; } else { $redis->set($key, 'Leon'); $redis->expire($key, 5); } return ['redis' => 'no data'];
Cache
Voyons ensuite comment utiliser Redis pour la mise en cache. De même, pour la mise en cache, nous devons modifier l'élément de cache dans le fichier de configuration :'components' => [ 'cache' => [ // 'class' => 'yii\caching\FileCache', 'class' => 'yii\redis\Cache', ], ],
L'exemple de code de
'components' => [ 'cache' => [ // 'class' => 'yii\caching\FileCache', 'class' => 'yii\redis\Cache', 'redis' => [ 'hostname' => 'localhost', 'port' => 6379, 'database' => 0, ], ], ],
$cache = Yii::$app->cache; $key = 'username'; if ($cache->exists($key)) { return ['cache' => $cache->get($key)]; } else { $cache->set($key, 'Leon', 5); } return ['cache' => 'no cache'];
Session
Enfin , redis est utilisé comme session. Il doit également être configuré dans le composant :'components' => [ 'session' => [ 'name' => 'advanced-frontend', 'class' => 'yii\redis\Session' ], ],
'components' => [ 'session' => [ 'name' => 'advanced-frontend', 'class' => 'yii\redis\Session', 'redis' => [ 'hostname' => 'localhost', 'port' => 6379, 'database' => 0, ], ], ],
$session = Yii::$app->session; $key = 'username'; if ($session->has($key)) { return ['session' => $session->get($key)]; } else { $session->set($key, 'Leon'); } return ['session' => 'no session'];
Tutoriels d'introduction Yii gratuits, tout le monde est invité à apprendre !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!