(No version information available, might only be in Git)
Collection::removeOne — Удаляет один документ из коллекции
Метод удаляет один документ из коллекции по идентификатору.
Этот метод — сокращённая запись вызова Collection.remove("_id = :id").bind("id", id).execute()
.
id
Идентификатор документа коллекции, который требуется удалить. Обычно это _id, который сгенерировал MySQL Server при добавлении записи.
Объект Result, который можно использовать для запроса количества затронутых элементов или количества предупреждений, которые сгенерировала операция.
Пример #1 Пример использования метода mysql_xdevapi\Collection::removeOne()
<?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": "Alfred", "age": 18, "job": "Butler"}')->execute();
// Обычно _id узнают другими способами,
// но для этого примера давайте извлечём сгенерированный идентификатор и используем его
$ids = $result->getGeneratedIds();
$alfred_id = $ids[0];
$result = $collection->removeOne($alfred_id);
if (!$result->getAffectedItemsCount()) {
echo "Alfred с идентификатором $alfred_id не был удален.";
} else {
echo "До свидания, Alfred, ты можешь взять с собой _id $alfred_id.";
}
?>
Вывод приведённого примера будет похож на:
До свидания, Alfred, ты можешь взять с собой _id 00005b6b536100000000000000cb.