L'utilisation de Carbone pour le retour de l'homme lisible datetime différence
Je suis en utilisant Laravel 4 pour créer mon projet.
Je suis actuellement en train de construire la section des commentaires, et je veux afficher la date de la poste a été créé, un peu comme Facebook du '10 mins ago' & 'il y a 2 semaines' etc.
J'ai fait un peu de recherche et a trouvé qu'un paquet appelé De carbone pouvez le faire.
Après la lecture de la Laravel du doc, il est dit:
Par défaut, Éloquent va convertir le
created_at
,updated_at
, et
deleted_at
colonnes à des instances deCarbon
, qui fournit une
assortiment de méthodes utiles, et s'étend le natif de PHPDateTime
classe.
Mais quand je rentre dans une colonne de date que j'ai créé, il ne s'affiche pas comme sur Facebook.
Le code que j'utilise est:
return array('time');
A tout le corps utilisé ce Carbone qui pourrait me donner un coup de main en faisant ce que j'ai besoin, je suis assez confus.
Vous devez vous connecter pour publier un commentaire.
Si vous lisez le Carbone docs pour obtenir ce que vous voulez, vous appelez la
diffForHumans()
méthode.$comment->created_at
est déjà un objet de Carbone, par défaut, de sorte que tous vous avez besoin à faire est de:$bookmark->created_at->diffForHumans()
Par défaut, Éloquent va convertir le created_at, updated_at, et deleted_at colonnes à des instances de Carbone. Donc, votre code doit être comme ceci:
C'est très cool. Il va produire de la chaîne
2 minutes ago
ou1 day ago
. Plurar ou singulier, des secondes, des minutes, des heures, des jours, des semaines ou des années, il s'exécute automatiquement. Je l'ai testé sur Laravel version 4.1.24.Carbon
documentation a dit... but also does 'from now', 'after' and 'before'
.Pour toute version de Laravel
utiliser ce code pour le moment: il y a
}
De carbone::parse($p->created_at)->diffForHumans();