MongoCollection::remove

Remove records from this collection

&reftitle.description; public `bool|array` `MongoCollection::remove` `array` `criteria` array() `array` `options` array()
&reftitle.parameters;

`criteria`

- Description of records to remove.

`options`

- Options for remove.

  &mongo.writes.parameters.writeconcern;

  - `"justOne"`

    Remove at most one record matching this criteria.

  &mongo.writes.parameters.fsync; &mongo.writes.parameters.journal; &mongo.writes.parameters.writeconcern; &mongo.writes.parameters.writeconcerntimeout; &mongo.writes.parameters.safe; &mongo.writes.parameters.timeout;
&reftitle.returnvalues;

Returns an array containing the status of the removal if the `"w"` option is set. Otherwise, returns &true;.

Fields in the status array are described in the documentation for `MongoCollection::insert`.

&reftitle.errors; &mongo.errors.exceptions.writeconcern;
&reftitle.changelog;

&Version; | &Description;
1.3.0 | The `options` parameter no longer accepts a boolean to signify `"justOne"`. Instead, this now has to be done with `array('justOne' => true)`.
1.2.11 | Emits `E_DEPRECATED` when `options` is `scalar`.
1.2.0 | Added `"timeout"` option.
1.0.11 | Disconnects on "not master" errors if `"safe"` is set.
1.0.9 | Added ability to pass integers to the `"safe"` option, which previously only accepted booleans. Added `"fsync"` option. The return type was changed to be an array containing error information if the `"safe"` option is used. Otherwise, a boolean is returned as before.
1.0.5 | Changed second parameter to be an array of options. Pre-1.0.5, the second parameter was a boolean indicating the `"safe"` option.

&reftitle.examples;

### `MongoCollection::remove` with justOne example

    <?php

    $radioactive = $db->radioactive;

    // count how much more plutonium there is
    $remaining = $radioactive->count(array('type' => 94));

    $halflife = $remaining/2;

    // remove half of it
    while ($halflife > 0) {
        $radioactive->remove(array('type' => 94), array("justOne" => true));
        $halflife--;
    }

    ?>

&reftitle.seealso;

- `MongoCollection::insert`
- `MongoCollection::update`
- MongoDB core docs on remove.