php7使用MongoDB

来源:互联网 发布:纯网络综艺节目 编辑:程序博客网 时间:2024/04/28 20:25

安装

打开网址: https://pecl.php.net/package/mongodb
选择适合自己的版本
打开php.ini 添加

extension=php_mongodb.dll

查看是否安装成功

php -m|findstr mongodbmongodb

写个测试例子

php7需要使用全新的api跟之前版本不一样

$bulk = new MongoDB\Driver\BulkWrite();$bulk->insert(['_id' => 1, 'x' => 1]);$bulk->insert(['_id' => 2, 'x' => 2]);$bulk->update(['x' => 2], ['$set' => ['x' => 1]], ['multi' => false, 'upsert' => false]);$bulk->update(['x' => 3], ['$set' => ['x' => 3]], ['multi' => false, 'upsert' => true]);$bulk->update(['_id' => 3], ['$set' => ['x' => 3]], ['multi' => false, 'upsert' => true]);$bulk->insert(['_id' => 4, 'x' => 2]);$bulk->delete(['x' => 1], ['limit' => 1]);$manager = new MongoDB\Driver\Manager('mongodb://localhost:27017');$writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 100);$result = $manager->executeBulkWrite('db.test', $bulk, $writeConcern);printf("Inserted %d document(s)\n", $result->getInsertedCount());printf("Matched  %d document(s)\n", $result->getMatchedCount());printf("Updated  %d document(s)\n", $result->getModifiedCount());printf("Upserted %d document(s)\n", $result->getUpsertedCount());printf("Deleted  %d document(s)\n", $result->getDeletedCount());foreach ($result->getUpsertedIds() as $index => $id) {    printf('upsertedId[%d]: ', $index);    var_dump($id);}/* If the WriteConcern could not be fulfilled */if ($writeConcernError = $result->getWriteConcernError()) {    printf("%s (%d): %s\n", $writeConcernError->getMessage(), $writeConcernError->getCode(), var_export($writeConcernError->getInfo(), true));}