note 90537 modified in function.memcache-add by danbrown

From: Date: Sat, 19 Jun 2010 03:52:42 +0000
Subject: note 90537 modified in function.memcache-add by danbrown
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-170265@lists.php.net to get a copy of this message
skeleton of a thread safe updater for an incremental counter: <?php $key = "counter"; $value = $memcache->increment($key, 1); if ($value === false) { // --- read from DB --- $query = "SELECT value FROM database"; $result = mysql_query($query); $row = mysql_fetch_assoc($result); $db_value = $row["value"]; $add_value = $memcache->add($key, $db_value + 1, 0, 0); if ($add_value === false) { $value = $memcache->increment($key, 1) if ($value === false) { error_log ("counter update failed."); } } else { $value = $db_value + 1; } } // --- display counter value --- echo $value; ?> --was-- skeleton of a thread safe updater for an incremental counter: <?php $key = "counter"; $value = $memcache->increment($key, 1); if ($value === false) { // --- read from DB --- $query = "SELECT value FROM database"; $result = mysql_query($query); $row = mysql_fetch_assoc($result); $db_value = $row["value"]; $add_value = $memcache->add($key, $db_value + 1, 0, 0); if ($add_value === false) { $value = $memcache->increment($key, 1) if ($value === false) { error_log ("counter update failed."); } } else { $value = $db_value + 1; } } // --- display counter value --- echo $value; ?> http://php.net/manual/en/function.memcache-add.php

« previous php.notes (#170265) next »