2016-10-31 5 views
0

-je utiliser MongoDB et j'ai cette collection:MongoDB prendre tableau keys Listí

{ 
"_id" : ObjectId("5810020c63b46a3071029031"), 
"where" : "shool", 
"referenceWork" : [ 
    { 
     "role" : "teacher", 
     "people" : [ 
      { 
       "name" : "lello", 
       "num" : "01" 
      }, 
      { "name" : "gigi", 
       "num" : "02" 
      }, 
      { 
       "name" : "mario", 
       "num" : "03" 
      } 
     ] 
    }, 
    { 
     "role" : "janitor" 
    } 
] 

}

Je dois savoir comment obtenir les clés du tableau, comme: professeur et concierge.

Mes commandes php:

$query = "db.people.findOne({'_id' : ObjectId('".$id."')})"; 
$response = $db->execute($query); 
$responseJson = $response['retval']['referenceWork'] ; 
echo json_encode($responseJson); 

En outre, je ne sais pas comment obtenir la longueur de referenceWork.

+0

Avez-vous lu toute la documentation de php et MongoDB? S'il vous plaît lire d'abord. Voici la documentation officielle http://php.net/manual/fr/mongo.queries.php –

+0

Je ne savais vraiment pas – AlleBo

Répondre

0

Essayez le code ci-dessous: -

 $rescursor=[];  
     $query = "db.people.findOne({'_id' : ObjectId('".$id."')})"; 
     $response = $this->getDB()->execute($query); 
     $arrayRole=$response['retval']['referenceWork']; 
     $count = count($arrayRole); 
     for($i=0;$i<$count;$i++){ 
      echo $arrayRole[$i]['role']; 
      echo "<br>"; 
     }