2010-12-12 43 views
0

J'ai un champ créé-à dans ma collection de nouvelles qui enregistre les datesMongoDB PHP obtenir les noms de mois uniques

"created-at": new Date(2010, 11, 5); 

im en utilisant la fonction de la date en PHP pour obtenir les noms de mois

date('F', $obj['created-at']->sec); 

Quelle im essayer de le faire est de faire seulement sortir des noms de mois uniques, donc au lieu de laisser dire:
novembre, novembre, décembre

je veux pour afficher:
novembre, décembre

ive essayé d'utiliser distincts mais cela ne fonctionnera pas dans mon cas

$db->command(array("distinct" => "news", "key" => "created-at")); 

est là de toute façon je peux sortie les noms des mois uniques de la création-au champ? ou devrais-je ajouter un champ de nom de mois et utiliser distinct sur cela à la place?

Répondre

0

pas une solution optimale, mais est ce que je l'ai fait pour obtenir les noms de mois uniques si anyones intéressés

j'ai fini la création d'un tableau $ stack et pousser à la pile tous les noms de mois en utilisant array_push alors je l'ai utilisé array_unique à récupérez toutes les valeurs uniques dans la pile

+1

Si vous voulez rendre cela un peu plus efficace, poussez les résultats en tant que clés d'un tableau, plutôt qu'en tant que valeurs, puis utilisez array_keys() pour obtenir l'ensemble final. Comme dans: $ mois [$ mois] = true; return array_keys ($ mois); – majelbstoat