2016-07-25 8 views
1

Wie würde voller PHP-Block des Codes aussehen wie zuletzt eingefügtes Objekt in der Sammlung zurückgeben? Dies ist meine Funktion, aber es gibt kein korrektes Objekt zurück.PHP Mongo - finden Sie das letzte Objekt in der Sammlung

# Create connection instance 
     $this->mongo = new MongoClient($connection_string); 
     # Select database 
     $this->database = $this->mongo->selectDB($database_name); 

public function get_last($given_collection){ 
     $collection = $this->database->selectCollection($given_collection); 
     $data_object = $collection->find()->sort(array("id"=>1)); 
     return $data_object; 
    } 

Antwort

0

Dies ist sehr chaotisch Code, aber es macht den Job. Wenn jemand die Bearbeitung vorschlägt, um diesen Code richtig zu formatieren, werde ich ihn akzeptieren.

public function get_last($given_collection){ 
    $collection = $this->database->selectCollection($given_collection); 
    $js = "function() { 
     return this.id > 0 
    }"; 
    $cursor = $collection->find(array('$where' => $js))->limit(1)->sort(array('$natural'=>-1)); 
    foreach ($cursor as $doc) { 
     return $doc; 
    } 
} 
1

Versuchen:

$collection->find()->sort(array("_id"=>-1))->limit(1); 

Dies ist mongodb Abfrage in absteigender Reihenfolge feine Show Daten arbeiten.

db.collection.find().sort({"_id":-1}).limit(1); 
Verwandte Themen