如何在ThinkPHP 6中插入和删除MongoDB文档?
时间: 2024-09-28 13:09:50 浏览: 48
thinkphp6 workerman无法使用框架Db/model等类库方法解决方案
在ThinkPHP 6中操作MongoDB文档,你需要先安装MongoDB的驱动,可以通过Composer来进行安装。以下是插入(insert)和删除(delete)文档的基本步骤:
**插入文档(Inserting a Document)**:
```php
use thinkmongo\document\Document;
use thinkmongo\collection\Collection;
// 创建文档模型
class User extends Document
{
// 定义文档结构
protected $fields = [
'name' => ['type' => 'string'],
'email' => ['type' => 'string', 'required' => true],
];
}
// 初始化集合
$collection = Collection::get('users');
// 插入数据
$user = new User([
'name' => '张三',
'email' => 'zhangsan@example.com'
]);
$result = $collection->save($user);
if ($result instanceof \thinkmongo\Cursor) {
echo "插入成功,id为:" . $result->first()->_id;
} else {
echo "插入失败,错误信息:" . $result;
}
```
**删除文档(Deleting a Document)**:
```php
// 根据_id查找并删除文档
$id = 'your_document_id'; // 替换为实际文档的_id
$result = $collection->deleteOne(['_id' => new \MongoDB\BSON\ObjectID($id)]);
if ($result['ok'] == 1 && $result['n'] > 0) {
echo "文档删除成功";
} else {
echo "删除失败,原因:" . $result['err'];
}
```
记得替换上述代码中的`'your_document_id'`为你需要操作的实际文档的_id。
阅读全文