4. Установка PHP Redis-расширения
Скачать PHP Redis:
wget https://github.com/phpredis/phpredis/archive/3.1.4.tar.gz
Проверить установленные расширения PHP с помощью команды php -m.
Конкретные шаги по установке:
a) Распаковать пакет PHP Redis с помощью команд tar -zxvf xxx.tar.gz или unzip xxx.zip.
b) Перейти в каталог Redis и выполнить команду phpize для генерации файла configure.
phpize
c) Выполнить команду configure с указанием пути к файлу конфигурации PHP (например, ./configure --with-php-config=/usr/bin/php-config
).
d) Выполнить команды make и make install для компиляции и установки расширения.
make install
e) Добавить расширение Redis в файл php.ini. Сначала найти расположение файла php.ini с помощью команды php --ini
. Затем добавить строку extension = redis.so в конец файла.
f) Проверить успешность установки с помощью команды php -m.
Подключение к Redis:
PHP Redis использует пространство имён root (/). При создании экземпляра класса Redis рекомендуется добавлять префикс , например, new \Redis().
Команды Redis соответствуют командам и параметрам на сайте Redis.io.
Пример подключения к Redis:
<?php
/**
* Подключение к Redis
*/
// Создание экземпляра Redis
$redis = new \Redis();
// Подключение к Redis
$redis->connect('127.0.0.1', 6379);
5. Операции со строками
Пример кода для работы со строковыми значениями:
<?php
/**
* Операции со строками
*/
// Подключение к Redis
$redis = new \Redis();
$redis->connect('127.0.0.1', 6379);
// Удаление ключа string1
$redis->delete('string1');
// Установка значения string1
$redis->set('string1', 'val1');
// Получение значения string1
$val = $redis->get('string1');
var_dump($val);
// Установка целочисленного значения для string2
$redis->set('string2', 4);
// Увеличение значения string2 на 2
$redis->incr('string2', 2);
// Получение обновлённого значения string2
$val = $redis->get('string2');
var_dump($val);
Выполнение этого кода должно привести к выводу значений val1 и 6.
6. Операции с списками
Пример кода для операций с элементами списка:
<?php
/**
* Операции с элементами списка
*/
// Подключение к Redis
$redis = new \Redis();
$redis->connect('127.0.0.1', 6379);
// Удаление ключа list1
$redis->delete('list1');
// Добавление элементов в список list1
$redis->lPush('list1', 'val1');
$redis->lPush('list1', 'val2');
$redis->lPush('list1', 'val3');
// Извлечение последнего элемента из списка list1 и вывод его значения
$val1 = $redis->rPop('list1');
var_dump($val1);
// Повторное извлечение последнего элемента и вывод его значения
$val2 = $redis->rPop('list1');
var_dump($val2);
После выполнения этого кода должны быть выведены значения val1 и val2.
7. Операции с множествами
Пример кода для операций над множеством:
<?php
/**
* Операции над множеством
*/
// Подключение к Redis
$redis = new \Redis();
$redis->connect('127.0.0.1', 6379);
// Удаление ключа set1
$redis->delete('set1');
// Добавление элементов во множество set1
$redis->sAdd('set1', 'val1');
$redis->sAdd('set1', 'val2');
$redis->sAdd('set1', 'val3');
$redis->sAdd('set1', 'val3');
// Вывод количества элементов в множестве set1
$number = $redis->sCard('set1');
var_dump($number);
// Вывод всех элементов множества set1
$val = $redis->sMembers('set1');
var_dump($val);
Этот код должен вывести значение 3 для переменной number и массив с тремя элементами для переменной val. Обратите внимание, что добавление одного и того же элемента дважды не приводит к увеличению размера множества.
8. Операции с хешами
Пример кода для операций с хеш-таблицами:
<?php
/**
* Операции с хеш-таблицей
*/
// Подключение к Redis
$redis = new \Redis();
$redis->connect('127.0.0.1', 6379);
// Операции с хеш-таблицей hash1
// Удаление ключа hash1
$redis->delete('hash1');
// Установка значений в хеш-таблицу hash1
$redis->hSet('hash1', 'name', 'xiaoming');
$redis->hSet('hash1', 'age', '25');
$redis->hSet('hash1', 'gender', '1');
// Получение значения ключа name из хеш-таблицы hash1
$name = $redis->hGet('hash1', 'name');
var_dump($name);
// Одновременное получение значений нескольких ключей из хеш-таблицы hash1
$val = $redis->hMGet('hash1', array('name', 'age', 'gender'));
var_dump($val);
В результате выполнения этого кода будут выведены значение «xiaoming» для переменной name и массив с тремя значениями для переменной val.
9. Операции с сортированными множествами (zsets)
Пример кода для операций с сортированными множествами:
<?php
/**
* Операции с zsets
*/
// Подключение к Redis
$redis = new \Redis();
$redis->connect('127.0.0.1', 6379);
// Операции с zset1
// Удаление ключа zset1
$redis->delete('zset1');
// Добавление элементов в zset1 с указанием их весов
$redis->zAdd('zset1', 100, 'xiaoming');
$redis->zAdd('zset1', 90, 'xiaohong');
$redis->zAdd('zset1', 930, 'xiaowagn');
// Выборка элементов из zset1 в порядке убывания весов
$res1 = $redis->zRange('zset1', 0, -1);
var_dump($res1);
// Выборка элементов из zset1 в обратном порядке (по возрастанию весов)
$res2 = $redis->zRevRange('zset1', 0, -1);
var_dump($res2);
Результатом выполнения этого кода будет вывод массива с тремя элементами в порядке убывания их весов для переменной res1 и в порядке возрастания весов для переменной res2.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )