2017-05-21 3 views
1

Ich habe folgendes Dokument:Wie Element aus Array MongoDB PHP ziehen?

"parameters" : [ 
    { 
     "592193d6470e6cf80d3c9874" : { 
      "Speed" : "1", 
      "Acceleration" : "2" 
     } 
    }] 

Ich brauche von Schlüssel 592193d6470e6cf80d3c9874 Element zu ziehen.

Ich habe versucht:

$this->collection->update(
      [], 
      ['$unset' => ['parameters' => $id]], ['multiple' => true]); 

Wo $id id 592193d6470e6cf80d3c9874.

+0

$ this-> Kollektion-> update ([], [ '$ unset' => [ 'Parameter' => null]], [ 'multiple' => true ]); –

+0

$ this-> Sammlung-> update ([], ['$ unset' => ['Parameter.'. $ ParameterId => null]], ['multiple' => true]); .... versuch mal –

+0

was meinst du mit ziehen? Sie möchten das Dokument löschen? – hassan

Antwort

1
$this->collection->update(['$unset' => ['parameters'=> ['_id'] => $id], ['multiple' => true]); 

oder

$this->collection->update(['$unset' => ['parameters.'.$parameterId => null]], ['multiple' => true]); 
+0

Okay Mann, danke, kann ich dich fragen, wie man Parameter hinzufügen? Ich habe versucht: '$ this-> collection-> update ( [" prototype_id "=> $ id], ['$ set' => [" parameter "=> array (array ($ key => $ data)) ]], ["multiple" => true]); 'Es überschreibt alle Parameter – Blablacar

+0

Und funktioniert nicht Sie Beispiel, Ursache Parameter ist Array – Blablacar

+0

$ this-> Sammlung-> update (['$ Unset' => ['Parameter' => ['_id'] => $ ID ], ['multiple' => wahr]); –