Last Modified 2014-02-14 by Jan Schneider

Notes on using HashTable inside a horde app - Examples as typed in the horde php console

You need to configure a hash table first - there is a HashTable tab in the Horde config.
If you use Redis, you need the nrk channel Predis package first.

Retrieving a HashTable Instance

$hashtable = $GLOBALS['injector']->getInstance('Horde_HashTable');

Setting a key and a scalar value

$hashtable->set('key1', 'value1');

Setting a key and a structured value by serializing

// Mind using Horde_Pack instead
$hashtable = $injector->getInstance('Horde_HashTable');

$data = array('foo', 'bar');
$packed = serialize($data);

$hashtable->set('packed', $packed);
$retrieved = $hashtable->get('packed');
print $retrieved;

Checking if a key exists, retrieving

if ($hashtable->exists('key1')) {
    $result = $hashtable->get('key1');