Как обработать определённые значения memcache?

Рейтинг: 0Ответов: 1Опубликовано: 21.02.2015

Добрый день.

Я вношу в кеш с ключами people_1111, people_1112,people_1113..., а также data_1111, data_1112,data_1113...

Мне нужно выбрать значения только относительно people_ и произвести с каждым из них вычисления либо получить массив ключ/значение.

Как это реализовать? Спасибо.

Ответы

▲ 1

Легко!

$cm = new Memcached("SERVER_ID");
$cm->addServer("127.0.0.1", 11211);
$all_keys = $cm->getAllKeys();
foreach ($all_keys as $k) {
    if (preg_match("/^people_(\d+)/", $k, $matches) == 1 ) {
        $p_key = $matches[1];
        // делаем что должно
    }
}

$all_cache = getMulti($all_keys);
var_dump($all_cache);

Должны стоять следующие пакеты:

dpkg -l | grep memc
ii  memcached
ii  php5-memcached
ii  libmemcached10