1
votes

Comment puis-je obtenir le nom du mois created_at sur laravel blade?

J'ai created_at champ. sur ma base de données, et j'ai besoin d'obtenir le nom du mois, par exemple;

...
{{\Carbon\Carbon::now()->monthName}}
...

Alors, comment puis-je le faire pour $value->created_at ?

J'ai essayé quelques solutions mais je n'ai pas obtenu le nom du mois.


2 commentaires

Est-ce que cela répond à votre question? Comment formater une date carbone pour obtenir le mois complet


@BABAKASHRAFI J'ai besoin du nom du mois.


4 Réponses :


3
votes

created_at déjà une instance Carbon, vous pouvez donc le faire en:

@php
   \Carbon\Carbon::setLocale('ru');
@endphp

{{ \Carbon\Carbon::parse($value->created_at)->translatedFormat('F') }}
// output : ноябрь

Ou,

{{ \Carbon\Carbon::parse($value->created_at)->format('F') }}
  • F - Une représentation textuelle complète d'un mois ( janvier à décembre )
  • M - Une courte représentation textuelle d'un mois (de janvier à décembre )

Traduire dans une autre langue : vous pouvez utiliser Carbon pour formater votre langue locale, comme pour Russian langue Russian :

{{ $value->created_at->format('F') }}


6 commentaires

Erreur: Call to a member function format()


@Orhan, created_at déjà une instance de carbone, mais certains comment des thats fonctionne pas sur votre côté. J'ai mis à jour ma réponse avec make a string to a carbon instance


\Carbon\Carbon::parse($value->created_at)->format('F') est travaillé!


format ('F') est en anglais, -> monthName est dans la langue actuelle.


@KyleK vous pouvez aussi traduire avec votre langue locale, j'ai ajouté plus sur ma réponse


Je connais translateFormat, j'ai en fait écrit cette méthode, mais je pense toujours que monthName est plus explicite et clair que "F" et très bien si vous n'avez besoin que du nom du mois. Le but de translateFormat est plutôt un format composé comme "ld F"



1
votes

tu peux écrire par

{{ date('F', strtotime($value->created_at)) }}


5 commentaires

Erreur: Call to a member function format()


pouvez-vous remplacer M par F


@iAmGroot qui ne corrige pas l'erreur de fonction cependant, il faut probablement juste analyser d'abord avant le formatage comme ça


@Orhan umm right ... alors vous pouvez {{date ('F', strtotime ($ value-> created_at))}}


@Orhan j'ai mis à jour la réponse, j'espère que cela vous aidera.



3
votes

vous pouvez essayer en tant que created_at déjà une instance Carbon, donc vous pouvez utiliser ceci

{{ \Carbon\Carbon::parse($value->created_at)->monthName }} 

assurez-vous que $value est une instance de Illuminate\Database\Eloquent\Model;

si ce n'est pas une instance du modèle laravel, vous pouvez faire comme ceci

{{ $value->created_at->monthName }}


3 commentaires

\Carbon\Carbon::parse($value->created_at)->monthName travaillé grâce. et {{\Carbon\Carbon::createFromTimestamp($value->created_at)->m‌​onthName}} travaillé.


@Orhan si vous pouvez montrer la forme où $value arrive, alors je peux vous dire que sans Carbon\Carbon vous pouvez utiliser ceci


Celui-ci est la bonne réponse @Orhan Je vous recommande de le marquer comme la solution, c'est la solution qui prend en charge l'internationalisation et -> monthName (ou -> shortMonthName) est beaucoup plus explicite et facile à comprendre pour le prochain développeur ou futur que court codes F ou M de format ()



0
votes

vous pouvez obtenir le nom du mois par le code suivant:

    {{ date("F", strtotime($value->created_at)) }}

vous pouvez obtenir plus de détails sur ( site php )


0 commentaires