中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
PHP實(shí)現(xiàn)在MongoDB模擬Auto Increment

最新PHP實(shí)現(xiàn)在MongoDB模擬Auto Increment

以下是三零網(wǎng)為大家整理的最新PHP實(shí)現(xiàn)在MongoDB模擬Auto Increment的文章,希望大家能夠喜歡!

下面為大家?guī)?lái)一篇PHP實(shí)現(xiàn)在MongoDB模擬Auto Increment 。下面就為你詳細(xì)講解一下,希望對(duì)您的學(xué)習(xí)PHP有所幫助。

代碼大致如下所示:

<?php
function generate_auto_increment_id($namespace, array $option = array())
{
$option += array(
'init' => 1,
'step' => 1,
);
$instance = new Mongo();
$instance = $instance->selectCollection('_seq', 'seq');
$seq = $instance->db->command(array(
'findAndModify' => 'seq',
'query' => array('_id' => $namespace),
'update' => array('$inc' => array('id' => $option['step'])),
'new' => true,
));
if (isset($seq['value']['id'])) {
return $seq['value']['id'];
}
$instance->insert(array(
'_id' => $namespace,
'id' => $option['init'],
));
return $option['init'];
}
var_dump(generate_auto_increment_id('foo'));
var_dump(generate_auto_increment_id('bar', array('init' => 123)));
?>

其具體實(shí)現(xiàn)方式主要是利用MongoDB中findAndModify命令,只要每次往MongoDB里insert對(duì)象前生成ID賦值給_id就OK了,因?yàn)樗膶?shí)現(xiàn)滿足原子性,所以不存在并發(fā)問(wèn)題。

另外說(shuō)明一點(diǎn),findAndModify本身提供了一個(gè)upsert參數(shù),為true的話可以自動(dòng)insert,但那樣就不能自定義初始值了,所以文中示例沒(méi)有使用upsert。

BTW,數(shù)據(jù)庫(kù)“_seq”的名字以下劃線開(kāi)頭,這樣列表的時(shí)候會(huì)排在前面,更容易分辨些。

以上就是關(guān)于PHP實(shí)現(xiàn)在MongoDB模擬Auto Increment 的內(nèi)容,希望已經(jīng)解決你的問(wèn)題。


延伸閱讀:
·php制作mongodb操作類(lèi)示例
·php的mongodb select常用操作
·PHP實(shí)現(xiàn)MongoDB數(shù)據(jù)庫(kù)操作類(lèi)
·PHP操作MongoDB(連接、新增、修改、刪除、查詢)示例
·MySQL+MongoDB二個(gè)數(shù)據(jù)庫(kù)簡(jiǎn)易對(duì)照表
·PHP操作MongoDB示例
·php cakephp 與 mongodb 集成教程
·MongoDB在PHP中的常用操作
·PHP Mongodb API參考
·PHP操作MongoDB
·PHP連接到Mongodb的方法
·PHP連接mongodb的簡(jiǎn)單范例
·Mongodb自定義方式生成自增ID的方案
·php封裝的mongodb操作類(lèi)
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
使用ThinkPHP框架實(shí)現(xiàn)登錄/注冊(cè)
分布式環(huán)境下ID生成方法總結(jié)
mysql的auto_increment列
mysql的auto
我為什么選擇MongoDB
PHP操作MongoDB學(xué)習(xí)筆記
更多類(lèi)似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服