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.