För att ta bort ett element från en array använder du $pull
operatör. Detta kräver ett "query"-uttryck för att identifiera elementet du vill ta bort:
$collection->update(
array("_id" => $_GET['post']),
array( '$pull' =>
array(
"comments" => array(
"_id" => new MongoId( $_GET['id'] )
)
)
)
);
"Fråge"-delen av $pull
agerar på de individuella elementen i den angivna arrayen, så allt som matchar villkoret kommer att tas bort från arrayen. Men det är också viktigt att din begäran-parameter är en "sträng", så du måste casta denna som ett faktiskt ObjectId
värde som du kan casta i PHP med MongoId
klass från föraren.