transactional_counter.php

来自「关于Berkelay数据库的共享源码」· PHP 代码 · 共 34 行

PHP
34
字号
<?php// Open a new Db4Env$dbenv = new Db4Env();$dbenv->set_data_dir("/var/tmp/dbhome");$dbenv->open("/var/tmp/dbhome");// Open a database in $dbenv.  Note that even though// we pass null in as the transaction, db4 forces this// operation to be transactionally protected, so PHP// will force auto-commit internally.$db = new Db4($dbenv);$db->open(null, 'a', 'foo');$counter = $db->get("counter");// Create a new transaction$txn = $dbenv->txn_begin();if($txn == false) {  print "txn_begin failed";  exit;}print "Current value of counter is $counter\n";// Increment and reset counter, protect it with $txn$db->put("counter", $counter+1, $txn);// Commit the transaction, otherwise the above put() will rollback.$txn->commit();// Sync for good measure$db->sync();// This isn't a real close, use _close() for that.$db->close();?>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?