J'ai une méthode qui obtienne un paramètre de mois pour sélectionner des lignes de ce mois à partir de la table des utilisateurs. Je souhaite montrer le nombre d'utilisateurs enregistrés pendant un mois.
|date |count | | 1 | 0 | | 2 | 0 | | 3 | 0 | | 4 | 0 | | 5 | 10 | | 6 | 0 | | 7 | 0 | | 8 | 0 | | 9 | 0 | | 10 | 0 | | 11 | 0 | | 12 | 0 | | 13 | 0 | | 14 | 0 | | 15 | 3 |
3 Réponses :
Si vous souhaitez une date par défaut que vous pouvez mentionner dans ce fichier Comment passer des valeurs par défaut Contrôleur en routage à Laravel 5? P> Migration code> ou vous pouvez également le faire dans votre
modèle code> à partir de laquelle vous pouvez récupérer des données quand il n'y a pas de date donné par l'utilisateur.
Vous pouvez également renvoyer ceci pour plus p>
Veuillez vérifier comme ceci
S'il vous plaît vérifier la dernière version simplifiée
De ce que j'ai des commentaires: Je pense que la meilleure chose ici est de compter le nombre d'utilisateurs créés chaque jour du mois. Cela vous obtiendra zéro au cas où personne n'a enregistré à une date donnée. Avec cela, vous seriez probablement en boucle à travers les dates en vérifiant les utilisateurs totaux enregistrés à chaque date.
Par exemple, essayons d'obtenir les utilisateurs de créer les 30 derniers jours à partir de maintenant: P>
$results = []; $startOfDay = now()->createMidnightDate(); for($i=0; $i<=30; $i++) { $total_count = User::whereBetween('created_at', [$startOfDay->subDays($i-1), $startOfDay->subDays($i)]) ->count(); array_push($results[ $startOfDay->subDays($i)->format('d')], $total_count); }
Que voulez-vous dire par "dates qui n'existent pas" ou ce qui est stocké dans ces dates
Dates que personne n'a enregistré, dans mon exemple au 5/11/2018, 10 utilisateurs enregistrés, et au 15/11/2018, 3 utilisateurs enregistrés, mais dans d'autres dates, personne n'a été enregistré.
@Ahadabasirad s'il vous plaît vérifier ma réponse