≡
  • 网络编程
  • 数据库
  • CMS技巧
  • 软件编程
  • PHP笔记
  • JavaScript
  • MySQL
位置:首页 > 网络编程 > PHP笔记

PHP Mongodb自定义方式生成自增ID的方案

人气:722 时间:2018-09-22

这篇文章主要为大家详细介绍了PHP Mongodb自定义方式生成自增ID的方案,具有一定的参考价值,可以用来参考一下。

对Mongodb自定义方式生成自增ID的方案感兴趣的小伙伴,下面一起跟随四海网的小编两巴掌来看看吧!

/**
 * Mongodb自定义方式生成自增ID的方案
 *
 * @param 
 * @arrange 512-笔记网: www.q1010.com
 **/
//首先创建一个自动增长id集合 ids
>db.ids.save({name:”user”, id:0});
//可以查看一下是否成功
> db.ids.find();
{ “_id” : ObjectId(“4c637dbd900f00000000686c”), “name” : “user”, “id” : 0 }
//然后每次添加新用户之前自增一下 ids集合 获得id
>userid = db.ids.findAndModify({update:{$inc:{‘id’:1}}, query:{“name”:”user”}, new:true});
{ “_id” : ObjectId(“4c637dbd900f00000000686c”), “name” : “user”, “id” : 1 }
//注:因为findAndModify是一个方法完成更新查找两个操作,所以具有原子性,多线程不会冲突。
//然后保存相应的数据
>db.user.save({uid:userid.id, username:”kekeles”, password:”kekeles”, info:”http://blog.dotcoo.com/ “});
//查看结果
> db.user.find();
{ “_id” : ObjectId(“4c637f79900f00000000686d”), “uid” : 1, “username” : “admin”, “password” : “admin” }
//这是mongo的shell,如果用的是服务器端程序java php python,可以自己对这些操作封装一下,只用传几个参数就可以返回自增的id,还可以实现像Oracle的跨表的自增id。
/***   来自四海网(www.q1010.com)   ***/
自己写了一段php的,拿出来给大家分享。

/**
 * Mongodb自定义方式生成自增ID的方案
 *
 * @param 
 * @arrange 512-笔记网: www.q1010.com
 **/
function mid($name, $db){
$update = array(‘$inc’=>array(“id”=>1));
$query = array(‘name’=>$name);
$command = array(
‘findandmodify’=>’ids’, ‘update’=>$update,
‘query’=>$query, ‘new’=>true, ‘upsert’=>true
);
$id = $db->command($command);
return $id['value']['id'];
}
$conn = new Mongo();
$db = $conn->idtest;
$id = mid(‘user’, $db);
$db->user->save(array(‘uid’=>$id, ‘username’=>’kekeles’, ‘password’=>’kekeles’, ‘info’=>’http://blog.dotcoo.com/ ‘));
$conn->close();
/***   来自四海网(www.q1010.com)   ***/

 

本文来自:http://www.q1010.com/173/835-0.html

注:关于PHP Mongodb自定义方式生成自增ID的方案的内容就先介绍到这里,更多相关文章的可以留意四海网的其他信息。

关键词:Mongodb

您可能感兴趣的文章

  • php 操作mongodb封装类的简单示例
上一篇:php 在网页生成excel提供下载示例
下一篇:php 将json数据写入文件的简单示例
热门文章
  • PHP 写入WRITE编码为UTF8的文件示例
  • PHP 中文字符串截取函数示例:支持gb2312,gbk,big
  • PHP 简单留言板的制作示例
  • 解决Fatal error: Call to undefined function mb_convert_encoding() in错误问题
  • PHP语言基础(标记、注释、变量、数组、常量、函数)示例
  • php 生成迅雷链接的简单示例
  • php 获取短网址的实现方法
  • PHP 通用分页类的简单示例
  • PHP 使用文件方式导入导出整个MYSQL数据库的实现方法
  • php 获取MYSQL错误的简单示例
  • 最新文章
    • 解决PHP使用redis实现统计缓存MySQL压力的问题
    • php 简单的上传进度条的简单示例
    • php 给html中引用的js和css路径打上版本号的实现方法
    • php 实现计算年龄精准到年月日的实例
    • php+ajax无刷新分页的简单示例
    • 解决php+ajax无刷新上传图片的问题
    • 解决PHP生成HTML静态页面的问题
    • 解决PHP使用uniqid函数生成唯一ID的问题
    • 解决PHP防刷票的一些问题
    • 微信access_token的获取开发的实现方法

四海网收集整理一些常用的php代码,JS代码,数据库mysql等技术文章。