(mongodb >=1.0.0)
MongoDB\Driver\BulkWrite::update β ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π² ΠΏΠΎΡΡΠΈΡ
$filter, array|object $newObj, ?array $updateOptions = null): voidΠΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π² MongoDB\Driver\BulkWrite.
filter (array|object)ΠΠ°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π‘Π£ΠΠ MongoDB ΠΏΡΠΈ ΠΎΡΠ΅Π½ΠΊΠ΅ ΠΊΡΠΈΡΠ΅ΡΠΈΠ΅Π² Π·Π°ΠΏΡΠΎΡΠ° ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅Ρ ΡΠΈΠΏΡ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΌ » пΡΠ°Π²ΠΈΠ»Π°ΠΌ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ BSON-ΡΠΈΠΏΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΠΈ ΠΆΠΎΠ½Π³Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΠΏΠ°ΠΌΠΈ Π² PHP. ΠΡΠΈ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ BSON-ΡΠΈΠΏΠ° Π² Π·Π°ΠΏΡΠΎΡΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ BSON-ΠΊΠ»Π°ΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠΈΠΏΡ BSON-Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π΄Π»Ρ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Ρ BSON-ΡΠΈΠΏΠΎΠΌ » ObjectId ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° MongoDB\BSON\ObjectId.
newObj (array|object)$set), Π·Π°ΠΌΠ΅Π½ΡΡΡΠΈΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
ΡΠΎΠ»ΡΠΊΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ field:value) ΠΈΠ»ΠΈ Β»Β ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ Π°Π³ΡΠ΅Π³Π°ΡΠΈΠΈ.
updateOptions
| ΠΠΏΡΠΈΡ | Π’ΠΈΠΏ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ | ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ |
|---|---|---|---|
| arrayFilters | array | ΠΠ°ΡΡΠΈΠ² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ² ΡΠΈΠ»ΡΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π±ΡΠ΄ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π² ΠΏΠΎΠ»Π΅ ΠΌΠ°ΡΡΠΈΠ²Π°. Π‘ΠΌΠΎΡΡΠΈΡΠ΅ » УказΡΠ²Π°ΠΉΡΠ΅ arrayFilters Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π² ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ MongoDB Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ. ΠΠΏΡΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½Π° Ρ MongoDB 3.6+ ΠΈ ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½Π° ΡΠΊΠ°Π·Π°Π½ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ°. | |
| collation | array|object |
» БопоΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅
ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° ΠΏΡΠ°Π²ΠΈΠ»Π°
Π΄Π»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΡΡΠΎΠΊ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠ΅Π°ΠΊΡΠΈΡ Π½Π° ΡΠ΅Π³ΠΈΡΡΡ Π±ΡΠΊΠ² ΠΈ Π½Π°Π΄ΡΡΡΠΎΡΠ½ΡΠ΅ Π·Π½Π°ΠΊΠΈ.
ΠΡΠ»ΠΈ Π·Π°Π΄Π°Π»ΠΈ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΡΠΎ ΠΏΠΎΠ»Π΅ "locale" ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ.
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΠΎΠ»Π΅ΠΉ ΡΠΌΠΎΡΡΠΈΡΠ΅ Π² ΡΠ°Π·Π΄Π΅Π»Π΅
» БопоΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅.
ΠΡΠ»ΠΈ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π΅ Π·Π°Π΄Π°Π»ΠΈ ΡΠ²Π½ΠΎ, Π½ΠΎ Ρ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ»ΠΈ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ,
ΡΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠ±ΡΠ°Π½ΠΎ ΠΎΠ½ΠΎ. ΠΡΠ»ΠΈ Π½Π΅Ρ Π½ΠΈ ΡΠΎΠ³ΠΎ Π½ΠΈ ΡΠΎΠ³ΠΎ, ΡΠΎ MongoDB Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΡΠΎΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΠΎΠ΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΡΡΡΠΎΠΊ.
ΠΡΠ° ΠΎΠΏΡΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½Π° Π² MongoDB 3.4+ ΠΈ, Π΅ΡΠ»ΠΈ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π° Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΡΡ
Π²Π΅ΡΡΠΈΠΉ, Π²ΡΠ·ΠΎΠ²Π΅Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
|
|
| hint | string|array|object | ΠΠ½Π΄Π΅ΠΊΡ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ. Π£ΠΊΠ°ΠΆΠΈΡΠ΅ Π»ΠΈΠ±ΠΎ ΠΈΠΌΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π² Π²ΠΈΠ΄Π΅ ΡΡΡΠΎΠΊΠΈ, Π»ΠΈΠ±ΠΎ ΡΠ°Π±Π»ΠΎΠ½ ΠΊΠ»ΡΡΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΡΠ»ΠΈ ΡΠΊΠ°Π·Π°Π½ΠΎ, ΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π°ΠΏΡΠΎΡΠΎΠ² Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΏΠ»Π°Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΎΠΊ. ΠΠΏΡΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½Π° Ρ MongoDB 4.4+ ΠΈ ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½Π° ΡΠΊΠ°Π·Π°Π½ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ°. | |
| multi | bool |
ΠΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ²ΡΠΉ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ, Π΅ΡΠ»ΠΈ false ΠΈΠ»ΠΈ Π²ΡΠ΅
ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΡΡΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ ΠΏΡΠΈ true. ΠΡΠ° ΠΎΠΏΡΠΈΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ true, ΠΊΠΎΠ³Π΄Π°
newObj - Π·Π°ΠΌΠ΅Π½ΡΡΡΠΈΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ.
|
false |
| sort | array|object |
Π£ΠΊΠ°ΠΆΠΈΡΠ΅, ΠΊΠ°ΠΊΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ Π±ΡΠ΄Π΅Ρ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ½ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ,
Π΅ΡΠ»ΠΈ Π·Π°ΠΏΡΠΎΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΠΌ. ΠΡΠ΄Π΅Ρ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ½ ΠΏΠ΅ΡΠ²ΡΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ,
ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΏΠΎΡΡΠ΄ΠΊΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½, Π΅ΡΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ "multi"
ΡΠ°Π²Π½ΠΎ true.
ΠΠΏΡΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½Π° Π² MongoDB 8.0+ ΠΈ ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ,
Π΅ΡΠ»ΠΈ Π±ΡΠ΄Π΅Ρ ΡΠΊΠ°Π·Π°Π½Π° Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ°.
|
|
| upsert | bool |
ΠΡΠ»ΠΈ filter Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΌΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ,
Π±ΡΠ΄Π΅Ρ Π²ΡΡΠ°Π²Π»Π΅Π½ Π½ΠΎΠ²ΡΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ. ΠΠΎΠΊΡΠΌΠ΅Π½Ρ Π±ΡΠ΄Π΅Ρ
ΡΠΎΠ·Π΄Π°Π½ ΠΈΠ· newObj, Π΅ΡΠ»ΠΈ ΠΎΠ½ Π·Π°ΠΌΠ΅Π½ΡΡΡΠΈΠΉ
Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ (Ρ.Π΅. ΠΎΡΡΡΡΡΡΠ²ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ); Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ Π²
newObj Π±ΡΠ΄ΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΊ
filter Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°.
|
false |
Π€ΡΠ½ΠΊΡΠΈΡ Π½Π΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
| ΠΠ΅ΡΡΠΈΡ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
|---|---|
| PECL mongodb 1.21.0 |
ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ "sort".
|
| PECL mongodb 1.7.0 |
ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ "hint".
|
| PECL mongodb 1.6.0 |
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ newObj ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ
Π°Π³ΡΠ΅Π³Π°ΡΠΈΠΈ. Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ MongoDB 4.2+, Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅
ΡΡΠ°ΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ° Π²ΡΠ±ΡΠΎΡΠΈΡ
ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
|
| PECL mongodb 1.5.0 |
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΡΠΈΠΈ "arrayFilters" ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ,
Π΅ΡΠ»ΠΈ ΠΎΠ½Π° Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ.
Π Π°Π½ΡΡΠ΅ Π½Π΅ Π²ΡΠ±ΡΠ°ΡΡΠ²Π°Π»ΠΎΡΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅, ΠΈ ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π±ΡΠ» ΠΏΡΠΎΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½.
|
| PECL mongodb 1.4.0 |
ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ "arrayFilters".
|
| PECL mongodb 1.2.0 |
ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ "collation".
|
ΠΡΠΈΠΌΠ΅Ρ #1 ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ MongoDB\Driver\BulkWrite::update()
<?php
$bulk = new MongoDB\Driver\BulkWrite;
$bulk->update(
['x' => 2],
['$set' => ['y' => 3]],
['multi' => false, 'upsert' => false]
);
$manager = new MongoDB\Driver\Manager('mongodb://localhost:27017');
$result = $manager->executeBulkWrite('db.collection', $bulk);
?>