mongodb的_id默认是对象,在使用起来还是和mysql有很多的区别和不习惯,下面所以下:
1.mysql是可以通过getLastInsertId得到插入的id,但是mongdob不行,但是mongo可以事先得到mongoid,也就是通过:
$primaryVal = new \MongoId;
这样就得到了mongoId,然后赋值到数据,插入即可,也就是说mongoId是先得到在插入的。
2.如果我要自定义mongoId,可以这样:
$primaryVal = new \MongoId('xxxxxxxxxxx');
譬如查询的时候:
->where([$id => ['?ne'=> new \MongoId($primaryVal)]])
3.查询得到的记录,id是对象,我想得到字符串怎么办?
$one[$id]是_id的值,是一个对象,那么可以通过下面得到字符串:
$one[$id]->{'$id'}