//Init $key = 'root'; $error = ''; if (isset($_GET['key'])) { $key = $_GET['key']; } if (isset($_GET['bucket'])) { $db_bucket = $_GET['bucket']; } //Connect require_once 'riak.php'; $client = new RiakClient($db_host, $db_port); if (!$client->isAlive()) { die("<tt><h1>No Riak is running on http://{$db_host}:{$db_port}/ !</h1></tt>"); } $bucket = $client->bucket($db_bucket); $db_lastkey = 'lastkey'; function base36_inc(&$num) { return $num = base_convert(base_convert($num, 36, 10) + 1, 10, 36); } if (isset($_POST['action'])) { if ($_POST['action'] === 'ADD') { $obj = $bucket->get($db_lastkey); $nextkey = $obj->getData(); while ($obj->exists()) { $obj = $bucket->get(base36_inc($nextkey)); } $obj = $bucket->newBinary($db_lastkey, "{$nextkey}"); $obj->store() || ($error = 'Cannot store'); $obj = $bucket->newObject($nextkey, array('owner' => $user, 'title' => $_POST['title'], 'data' => nl2br($_POST['data'])));
function testLinkWalking() { # Create the object... $client = new RiakClient(HOST, PORT); $bucket = $client->bucket("bucket"); $bucket->newObject("foo", 2)->addLink($bucket->newObject("foo1", "test1")->store())->addLink($bucket->newObject("foo2", "test2")->store(), "tag")->addLink($bucket->newObject("foo3", "test3")->store(), "tag2!@#\$%^&*")->store(); $obj = $bucket->get("foo"); $results = $obj->link("bucket")->run(); test_assert(count($results) == 3); $results = $obj->link("bucket", "tag")->run(); test_assert(count($results) == 1); }
<tt><h1>Riak Hello World!</h1><pre> <?php require_once 'riak.php'; $client = new RiakClient('localhost', 8098); $bucket = $client->bucket('harvie'); $obj = $bucket->newObject('foo', 'bar baz'); $obj->store(); $obj = $bucket->get('foo2'); $obj->exists(); $obj->getBucket()->getName(); print_r('key: ' . $obj->getKey() . "\n"); print_r('val: ' . $obj->getData() . "\n"); echo "\nEOF\n";
function testMetaData() { $client = new RiakClient(HOST, PORT); $bucket = $client->bucket("metatest"); # Set some meta $bucket->newObject("metatest", array("foo" => 'bar'))->setMeta("foo", "bar")->store(); # Test that we load the meta back $object = $bucket->get("metatest"); test_assert($object->getMeta("foo") == "bar"); # Test that the meta is preserved when we rewrite the object $bucket->get("metatest")->store(); $object = $bucket->get("metatest"); test_assert($object->getMeta("foo") == "bar"); # Test that we remove meta $object->removeMeta("foo")->store(); $anotherObject = $bucket->get("metatest"); test_assert($anotherObject->getMeta("foo") === null); }