本文旨在使用mongodb-php官方库操作mongoDB,php自带的操作有点无力。
那我们走吧
一、安装(确定php已装mongoDB扩展,此处不再展开)
1.composer:composer require mongodb/mongodb;
2.GitHub下载:下载地址https://github.com/mongodb/mongo-php-library;
二、.引用
三、使用
1.插入数据
//插入单条数据
$data = [
'code' => '2020',
'name' => '学徒张三',
'avatar' => '/static/common/images/test.jpg',
'status' => 1,
'online_status' => 0,
];
$collection = (new Client("mongodb://127.0.0.1:27017"))->csdn_demo->csdn_info; // 连接到mongodb,csdn_demo为库,csdn_info为集合
$result = $collection->insertOne(data);
//插入多条数据
$data = [
[
'code' => '2020',
'name' => '学徒张三',
'avatar' => '/static/common/images/test.jpg',
'status' => 1,
'online_status' => 0,
],
[
'code' => '2020',
'name' => '沉默王二',
'avatar' => '/static/common/images/test.jpg',
'status' => 1,
'online_status' => 0,
],
];
$collection = (new Client("mongodb://127.0.0.1:27017"))->csdn_demo->csdn_info; // 连接到mongodb
$result = $collection->insertOne(data);
2.查询数据
//查询一条数据
$collection = (new MongoDB\Client)->csdn_demo->csdn_info;
$data= $collection->findOne(['name' => '学徒张三']);
//查询多条数据
$collection = (new MongoDB\Client)->csdn_demo->csdn_info;
$data= $collection->find(['status' => 1]);
//排序和limit
$collection = (new MongoDB\Client)->csdn_demo->csdn_info;
$data= $collection->find([],
[
'limit' => 5,
'sort' => ['code' => -1],
]);
//OR和AND
$collection = (new MongoDB\Client)->csdn_demo->csdn_info;
$data= $collection->find([
'$or' => [
['name'=>'沉默王二','code'=>'2020'],
['name'=>'学徒张三','code'=>'2021']
]
]);
3.更新数据
//更新单条数据
$collection = (new MongoDB\Client)->csdn_demo->csdn_info;
$updateResult = $collection->updateOne(
['code' => '2020'],
['$set' => ['name' => '大司马']]
);
//更新单条数据
$collection = (new MongoDB\Client)->csdn_demo->csdn_info;
$updateResult = $collection->updateMany(
['code' => '2020'],
['$set' => ['name' => '大司马']]
);
4.删除数据
//删除单条数据
$collection = (new MongoDB\Client)->csdn_demo->csdn_info;
$deleteResult = $collection->deleteOne(['code' => '2020']);
//删除多条数据
$collection = (new MongoDB\Client)->csdn_demo->csdn_info;
$deleteResult = $collection->deleteMany(['code' => '2020']);
总结:以上是mongoDB-php库的CRUD操作,大家有什么复杂操作也可以贴出来,操作主要来自官方文档https://docs.mongodb.com/php-library/current/tutorial/crud/#insert-many-documents