CollectionModify::arrayInsert

(No version information available, might only be in Git)

CollectionModify::arrayInsertДобавляет элемент в поле массива

Описание

publicmysql_xdevapi\CollectionModify::arrayInsert(string$collection_field, string$expression_or_literal): mysql_xdevapi\CollectionModify

Добавляет элемент в поле документа, когда поле — это массив из нескольких элементов. Через этот метод, в отличие от метода mysql_xdevapi\CollectionModify::arrayAppend(), можно указать, куда добавится новый элемент, определяя, после какого элемента он будет идти, тогда как метод mysql_xdevapi\CollectionModify::arrayAppend() добавляет новый элемент в конец массива.

Список параметров

collection_field

Определите элемент в массиве, после которого добавится новый элемент. Формат этого параметра: FIELD_NAME[ INDEX ], где FIELD_NAME — это имя поля документа, в которое нужно добавить элемент, а INDEX — это INDEX элемента в поле.

Поле INDEX основано на нуле, поэтому у первого элемента массива индекс — 0.

expression_or_literal

Новый элемент для добавления после FIELD_NAME[ INDEX ]

Возвращаемые значения

Объект CollectionModify, который можно использовать для выполнения команды или для добавления дополнительных операций.

Примеры

Пример #1 Пример использования mysql_xdevapi\CollectionModify::arrayInsert()

<?php
$session
= mysql_xdevapi\getSession("mysqlx://user:password@localhost");
$session->sql("DROP DATABASE IF EXISTS addressbook")->execute();
$session->sql("CREATE DATABASE addressbook")->execute();

$schema = $session->getSchema("addressbook");
$collection = $schema->createCollection("people");

$result = $collection
->add(
'{"name": "Bernie",
"traits": ["Friend", "Brother", "Human"]}'
)
->
execute();

$collection
->modify("name in ('Bernie', 'Jane')")
->
arrayInsert('traits[1]', 'Happy')
->
execute();

$result = $collection
->find()
->
execute();

print_r($result->fetchAll());
?>

Вывод приведённого примера будет похож на:

Array ( [0] => Array ( [_id] => 00005b6b5361000000000000010d [name] => Bernie [traits] => Array ( [0] => Friend [1] => Happy [2] => Brother [3] => Human ) ) )
To Top