MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

MongoDB/PHP entfernt ein bestimmtes Array-Element im Dokument

Um ein Element aus einem Array zu entfernen, verwenden Sie den $pull Operator. Dies erfordert einen "Abfrage"-Ausdruck, um das Element zu identifizieren, das Sie entfernen möchten:

$collection->update( 
    array("_id" => $_GET['post']),
    array( '$pull' => 
        array(
            "comments" => array(
                "_id" => new MongoId( $_GET['id'] )
            )
        )
    )
);

Der "Abfrage"-Teil von $pull wirkt auf die einzelnen Elemente des angegebenen Arrays, sodass alles, was der Bedingung entspricht, aus dem Array entfernt wird. Aber es ist auch wichtig, dass Ihr Anforderungsparameter eine "Zeichenfolge" ist, also müssen Sie dies als tatsächliche ObjectId umwandeln Wert, den Sie in PHP mit der MongoId umwandeln können Klasse vom Fahrer.