php 操作 MongoBb 使用记录

PHP技术
369
0
0
2022-08-14
其实这个东西不复杂,只是没有见过,所以记录下;

主要是实现后台对 api 请求日志的查看,使用了 mongo 数据库来操作;并不复杂,只是之前没有接触过,有什么不足和意见欢迎指出。

配置连接

参考: www.mayanpeng.cn/archives/64.html

$conn = new MongoClient('mongodb://localhost:27017');
$conn = new MongoClient();

// 关闭连接
$conn->close();

选择库表

$connection = $conn->myDb->test;

crud 操作

  • 查询
$data = $connection->find();
// 下面这个很重要
$list = iterator_to_array($data,false);
// 查询一条数据
$connection->findOne();
// 查询总数
$count = $connection->count();

代码展示

$where = [];
$sort = [];
$conn = new MongoClient();
$connection = $conn->db->log;
$data = $connection->find($where)->sort($sort)->limit(20)->skip($page);
$list = iterator_to_array($data, false);
$count = $connection->count($where);
$conn->close();
// 返回需要的数据
return [$list,$count];

总结

  • 参考了很多的文档,看了官方的文档,安装了 php5.6.9 的mongo 拓展,查询数据列表的时候发现 find() 查询出的数据直接返回是 {},findOne() 返回了一条数据,网上查了好久查到了 iterator_to_array();用这个函数处理后就可以看到查询出来的数据列表了。