请参考以下位置 http://docs.mongodb.org/manual/tutorial/create-an-auto-incrementing-field/
在指定的 URL(上面)中,有一个 java 脚本中的自动增量逻辑示例代码已转换为 php(我提供了下面的代码) - 我无法使其无错误。有人可以纠正我在转换中出错的地方吗?
<?php
function getNextSequence($name) {
global $db;
$ret = $db->counters->findAndModify(
array(
'query'=>array( '_id'=>name),
'update'=>array( '$inc'=>
array('seq'=> 1) ),
'new'=>'true'
)
);
return $ret->seq;
}
$db = new MongoClient();
$db = $db->test;
$db->counters->insert(
array(
'_id'=>"userid",
'seq'=>0
)
);
$db->users->insert(
array(
'_id'=> getNextSequence("userid"),
'name'=> "Sarah C."
)
);
$db->users->insert(
array(
'_id'=> getNextSequence("userid"),
'name'=> "Bob D."
)
);
$ret = $db->users->find();
print_r($ret);
?>
PHP 注意:使用未定义的常量名称 - 在第 6 行的 C:\php\seq.php 中假定为“名称” PHP 致命错误:在 C:\php\seq 中未捕获异常“MongoResultException”,消息“需要删除或更新”。 php:10 堆栈跟踪:#0 C:\php\seq.php(10): MongoCollection->findAndModify(Array) #1 C:\php\seq.php(25): getNextSequence('userid') #2 { main} 在第 10 行的 C:\php\seq.php 中抛出