Exemplo n.º 1
0
 /**
  * 保存单条记录,返回id
  * @param $data
  * @return unknown_type
  */
 public function put($data)
 {
     $this->before_save($data);
     $id = $data['id'];
     if ($id) {
         $odata = $this->get($id);
         foreach ($data as $k => $v) {
             $odata[$k] = $v;
         }
         parent::put($id, $odata);
     } else {
         $id = parent::genUid();
         $data['id'] = $id;
         parent::putCat($id, $data);
     }
     return $id;
 }
Exemplo n.º 2
0
record_time($st);
try {
    /* Connect to a table database */
    $tt = new TokyoTyrantTable("localhost", 10000);
    record_time($st, "connect");
    for ($j = 0; $j < 30; $j++) {
        $data['field' . $j] = uniqid();
    }
    $start = floor($tt->num() / 100);
    echo "start={$start} \n";
    for ($i = 1; $i < 100000; $i++) {
        $cur = $i + $start;
        $data['u'] = $cur;
        for ($j = 0; $j < 100; $j++) {
            $data['v'] = $cur . ':' . rand() % 10;
            $tt->put(null, $data);
        }
        if ($cur % 100 == 0) {
            record_time($st, "insert {$cur}*100");
        }
    }
} catch (TokyoTyrantException $e) {
    if ($e->getCode() === TokyoTyrant::TTE_KEEP) {
        echo "Existing record! Not modified\n";
    } else {
        echo "Error: ", $e->getMessage(), "\n";
    }
} catch (Exception $e) {
    var_dump($e);
    $e->print_trace();
}