php封装Mongodb流式操作数据库示例代码

代码语言:php

所属分类:其他

代码描述:php封装Mongodb流式操作数据库示例代码

代码标签: php 封装 Mongodb 流式 操作 数据库 示例 代码

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<?php
/**
 * 单文件 MongoDB 链式操作框架 (MongoFluent)
 * 
 * 特点:
 * 1. 无需定义 Model 类,直接 db::table('users') 即可操作。
 * 2. 自动处理 _id (输入自动转 ObjectId,输出自动转 String)。
 * 3. 自动维护 createdAt / updatedAt 时间字段。
 * 4. 语法模仿 SQL/Laravel,降低上手难度。
 */

// 开启错误提示,方便调试
error_reporting(E_ALL);
ini_set('display_errors', 1);

// ============================================================================
// 核心框架类:MongoFluent
// ============================================================================
class MongoFluent {
    protected static $manager; // MongoDB 驱动连接管理器
    protected static $dbName;  // 默认数据库名

    protected $collection;     // 当前操作的集合名
    protected $filter = [];    // 查询条件
    protected $options = [];   // 查询选项 (排序、分页、投影)
    protected $projection = [];// 字段选择

    /**
     * 1. 初始化数据库连接 (静态方法)
     * @param string $uri 连接字符串 (如 mongodb://127.0.0.1:27017)
     * @param string $dbName 数据库名称
     */
    public static function connect($uri, $dbName) {
        try {
            self::$manager = new MongoDB\Driver\Manager($uri."/".$dbName);
            self::$dbName = $dbName;
        } catch (Exception $e) {
            die("数据库连接失败: " . $e->getMessage());
        }
    }

    /**
     * 2. 入口方法:指定要操作的表(集合)
     * @param string $collectionName 集合名.........完整代码请登录后点击上方下载按钮下载查看

网友评论0