Skip to content

Instantly share code, notes, and snippets.

@forzamilan
Forked from debojitkakoti/seq_mongo_auto.php
Last active February 2, 2016 14:46
Show Gist options
  • Save forzamilan/46a618d1e12a7ba9e753 to your computer and use it in GitHub Desktop.
Save forzamilan/46a618d1e12a7ba9e753 to your computer and use it in GitHub Desktop.
Auto Incrementing Sequence in mongodb using php mongo
<?php
$m = new MongoClient();
// select a database
$db = $m->seq;
// select a collection (analogous to a relational database's table)
$collection = $db->counters;
$user_collection = $db->user;
/******************Function to auto increment seq******************/
function getNextSequence($name){
global $collection;
$retval = $collection->findAndModify(
array('_id' => $name),
array('$inc' => array("seq" => 1)),
null,
array(
"new" => true,
"upsert" => true,
)
);
return $retval['seq'];
}
/********************Example Usage**********************************/
$db_array=array('_id' => getNextSequence("userid"), 'name' => 'debojit');
$user_collection->insert($db_array);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment