Docs Menu
Docs Home
/ / /
PHP ライブラリ マニュアル

新機能

MongoDB PHPライブラリの次のバージョンで導入されている新機能、改善点、修正について説明します。

  • バージョン 2.1

  • バージョン2.0

  • バージョン1.21

  • バージョン1.20

  • バージョン1.19

  • バージョン1.18

  • バージョン1.17

重要

重大な変更

PHPライブラリ v2.1 のリリースでは、次の重大な変更が導入されています。

  • MongoDB Server 4.0 のサポートを廃止します。サポートされるMongoDB Server の最小バージョンは 4.2 です。

PHPライブラリ v2.1 リリースには、次の機能、改善点、修正が含まれています。

  • 複数のデータベースとコレクションに対する書き込み操作を同じ呼び出しで実行するためのクライアント一括書き込みAPIを追加します。この機能の詳細については、 一括書込み操作ガイドの「クライアントの一括書込み」セクションを参照してください。

重要

重大な変更

PHPライブラリ v2.0 のリリースでは、次の重大な変更が導入されています。

  • 次のメソッドでは、未加工のコマンド応答ではなく void が返されます。

    • MongoDB\Client: dropDatabase()

    • MongoDB\Collection: drop(), dropIndex(), dropIndexes(), dropSearchIndex(), rename()

    • MongoDB\Database: createCollection(), drop(), dropCollection(), renameCollection()

このリリースの重大な変更の詳細については、 ライブラリ バージョンのアップグレードガイドの 「バージョン 2.0 重大な変更」 セクションを参照してください。

PHPライブラリ v2.0 リリースには、次のAPI の変更と削除が含まれています。

  • 次のメソッドを追加します。

    Client::selectCollection()Client::selectDatabase()Database::selectCollection() メソッドは非推奨となり、今後のドライバー リリースでこれらの新しいメソッドに置き換えられる予定です。そのため、アプリケーションで 使用方法を変更する ことを検討してください。

  • MongoDB\Database::aggregate() メソッドと MongoDB\Collection::aggregate() メソッドを変更して、Pipelineインスタンスを$pipeline パラメータとして受け入れることができるようにします。この構造を使用する例については、 集計ガイドの「集計ビルダ」セクションを参照してください。

  • 拡張性と互換性を向上させるために、Cursor 型のヒントを CursorInterface に置き換えます。

  • GridFSタイプの非推奨フィールドを排除します。

    • ライブラリは、ファイルがGridFSにアップロードされるときに、md5フィールドを計算しません。アプリケーションでファイルダイジェストが必要な場合は、このプロセスをGridFS の外部で実装し、値をメタデータに保存する必要があります。

    • フィールド contentTypealiasesfiles GridFSコレクションに保存されなくなりました。アプリケーションでこの情報が必要な場合は、メタデータに保存する必要があります。GridFSの詳細については、ラージ ファイルの保存ガイドを参照してください。

  • 検索操作の次の非推奨オプションを削除します。

    • maxScan

    • modifiers

    • oplogReplay

    • snapshot

    検査操作でサポートされているオプションについては、MongoDB\Collection::find() または MongoDB\Collection::findOne() APIドキュメントを参照してください。

  • 非推奨の IndexInfo::isGeoHaystack() メソッドを削除します。

  • MongoDB\Database::createCollection() メソッドの非推奨の autoIndexId オプションと flags オプションを削除します。

  • 次の非推奨のメソッドとタイプを削除することで、 map-reduce機能のサポートを廃止します。

    • MongoDB\Collection::mapReduce()

    • MongoDB\MapReduceResult

    map-reduce操作は、$group$merge などの集計パイプラインステージ を使用して書き換えることができます。詳細については、 MongoDB Serverマニュアルのmap-reduce から集計パイプラインへの移行を参照してください。

  • 次の Iterator 実装を削除します。

    • MongoDB\Model\CollectionInfoIterator

    • MongoDB\Model\DatabaseInfoIterator

    • MongoDB\Model\IndexInfoIterator

    MongoDB\Client::listDatabases()MongoDB\Database::listCollections()、およびMongoDB\Collection::listIndexes()メソッドは、対応する結果を提供する一般的なトラバース可能なIteratorインスタンスを返します。

PHPライブラリ v1.21 リリースには、次の機能、改善点、修正が含まれています。

このバージョンの変更の詳細については、 v1.21 リリースノート を参照してくださいGithub .

重要

MongoDB Server v 3.6 サポート終了

このライブラリのリリースでは、 MongoDB Server v 3.6のサポートが削除されています。

  • MongoDB Server v 8.0のサポートを追加します。

  • Queryable Encryption(QE)範囲クエリのサポートを追加します。 この機能を使用するには、アプリを MongoDB Server 8.0以降に接続する必要があります。 QEQueryable Encryption 範囲クエリの詳細については、MongoDB Server マニュアルの「 」を参照してください。

  • シャーディングされたシャーディングされたクラスター操作が成功しない場合、ライブラリは他のmongosサーバーが使用可能な場合、操作の再試行に同じmongosサーバーを選択することを回避します。

  • KMIP データキーを作成する際に、 delegatedオプションを指定できるようになりました。 このオプションをtrueに設定すると、KMIP プロバイダーはデータキーの暗号化と復号化をローカルで実行し、暗号化のキーが KMIPサーバーから離れることはありません。

  • typeメソッドとMongoDB\Collection::createIndex()MongoDB\Collection::createSearchIndexes() メソッドの検索インデックス仕様に オプションを追加します。この変更により、Atlas ベクトル検索インデックスをプログラムで作成できるようになります。 詳細と例については、「 Atlas Search インデックスガイド 」を参照してください。

このバージョンの変更の詳細については、 v1.20 リリースノート を参照してくださいGithub .

PHPライブラリのこのリリースでは大きな変更は含まれておらず、 PHP拡張機能とバージョンの同等性を保つために追加されています。

  • PHP の既存のファイルシステム関数を使用してファイルを操作しやすくするために、新しいGridFS APIを追加します。 MongoDB\GridFS\Bucket::registerGlobalStreamWrapperAlias()メソッドを使用して、 GridFSバケットのグローバル エイリアスを登録できます。 そうすると、そのバケット内のファイルにはファイルURI のみを使用してアクセスできるようになります(例: " Gridds://mybucket/hello.txt ")。 このAPIのデモは、 Gridfs_stream_ wrapper .出力 を参照してください。 例スクリプト。

  • 基礎のMongoDB\Driver\Managerオブジェクトにスコープが設定されたモニタリング クラスの登録を容易にするために、 MongoDB\ClientクラスにMongoDB\Client::addSubscriber() } メソッドとMongoDB\Client::removeSubscriber()メソッドを追加します。

このリリースの詳細については、 v1.18 リリースノート を参照してくださいGithub .

このリリースの詳細については、 v1.17 リリースノート を参照してくださいGithub .

戻る

互換性

項目一覧