PHP 프레임워크 Yii2에서 redis 키-값 저장소를 잘 사용하려면 먼저 공식 Github 라이브러리 yii2-redis를 권장해야 합니다. 이 라이브러리는 Yii2 프레임워크에서 redis를 사용하는 데 도움이 될 수 있으며 캐싱, 세션 및 ActiveRecord 모드를 지원합니다.
yii2-redis 라이브러리 설치
작곡가를 사용하여 yii2-redis 라이브러리를 설치하고 프로젝트의 루트 디렉터리에서
php composer.phar require --prefer-dist yiisoft/yii2-redis:"~2.0.0"
를 실행하거나 작곡가.json 파일에
"yiisoft/yii2-redis": "~2.0.0"
를 추가하는 것이 좋습니다. 그런 다음 작곡가 업데이트를 실행하세요. 내부적으로는 정말 느립니다. 인내심을 갖고 기다리세요.
redis 구성
이 확장을 올바르게 사용하려면 애플리케이션의 구성 파일에서 연결 클래스를 구성해야 합니다. 일반적으로 구성 파일은 configweb.php입니다.
다음과 같이 redis 프로젝트를 구성 요소에 추가합니다.
return [ //.... 'components' => [ 'redis' => [ 'class' => 'yii\redis\Connection', 'hostname' => 'localhost', 'port' => 6379, 'database' => 0, ], ] ];
이후에는 yii2 프레임워크에서 정상적으로 redis를 사용할 수 있습니다.
Example
Simple to use
먼저 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'];
한 줄의 주석은 없지만 한눈에 알 수 있죠?
사용자 이름 키를 찾을 수 없는 경우 키-값 저장소를 설정하고 만료 시간은 5초입니다.
이것은 Redis를 사용하는 완전한 예입니다.
Cache
다음으로 Redis를 캐싱에 활용하는 방법을 살펴보겠습니다.
마찬가지로 캐싱을 위해서는 구성 파일의 캐시 항목을 수정해야 합니다.
'components' => [ 'cache' => [ // 'class' => 'yii\caching\FileCache', 'class' => 'yii\redis\Cache', ], ],
redis 구성 요소를 구성하지 않은 경우 캐시 아래에 redis도 구성해야 합니다.
'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
마지막으로 redis가 세션으로 사용됩니다. 컴포넌트에서도 구성해야 합니다:
'components' => [ 'session' => [ 'name' => 'advanced-frontend', 'class' => 'yii\redis\Session' ], ],
redis를 구성하지 않은 경우 redis도 구성해야 합니다:
'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'];
간단한 데모에서 Redis 사용 방법, 효율적인 도구는 모든 사람의 능력을 테스트하는 것입니다. 어서 해봐요!
PHP 중국어 웹사이트에는 무료 Yii 입문 튜토리얼이 많이 있습니다. 누구나 배울 수 있습니다!
위 내용은 yii2 프로젝트에서 redis를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!