boofw / mongo-pdo
通过 MongoDB 接口使用 PDO
v1.0.0
2017-11-01 06:40 UTC
This package is not auto-updated.
Last update: 2024-09-15 03:34:29 UTC
README
使用操作 MongoDB 的方式来操作 PDO 支持的 SQL 数据库
安装
使用 composer
{ ... "require": { "boofw/mongo-pdo": "~1.0" } }
或
composer require boofw/mongo-pdo:~1.0
用法
将 MongoCollection
改为 Boofw\MongoPDO\Collection
即可将数据库从 MongoDB
切换到 MySQL
等支持 PDO
的关系型数据库
例如将以下代码:
<?php $mongoClient = new MongoClient('mongodb://127.0.0.1'); $collection = $mongoClient->selectCollection('myDB', 'myTable');
修改为:
<?php $pdo = new PDO('mysql:host=localhost;dbname=myDB', 'username', 'password'); $collection = new \Boofw\MongoPDO\Collection($pdo, 'myTable');
这样就可以使用 MongoCollection
中的接口形式来操作 MySQL
等关系型数据库,例如以下代码:
<?php $pdo = new PDO('mysql:host=localhost;dbname=myDB', 'username', 'password'); $collection = new \Boofw\MongoPDO\Collection($pdo, 'myTable'); $cursor = $collection->find(['id' => ['$gt' => 100]])->sort(['updated_at' => 1])->limit(20)->skip(10); var_dump(iterator_to_array($cursor)); $collection->insert(['firstname' => 'Bob', 'lastname' => 'Jones']); var_dump($collection->findOne(['firstname' => 'Bob'])); $collection->update(['firstname' => 'Bob'], ['$set' => ['address' => '1 Smith Lane']]); var_dump($collection->findOne(['firstname' => 'Bob']));