使用Carbon将月份名称转换为字符串号码?

时间:2016-12-27 11:26:01

标签: laravel laravel-5 laravel-5.2

当我使用此代码时,如果语言为英语,例如12月我得到$date_number = 12,但是当我使用德语时我会得到Dezember $date_number= 01。多数民众赞成我认为我需要使用Carbon将月份名称转换为月份字符串,以便我可以使用本地化。任何建议如何解决这个问题?

$date_number = strval(date('m', strtotime($month)));

  $articles = Articles::whereRaw('MONTH(created_at) ='.$date_number)->where('approved',1)->get();

2 个答案:

答案 0 :(得分:1)

这有用吗?

$articles = Articles::whereRaw('MONTH(created_at) ='.Carbon::parse('1975-05-21 22:23:00.123456')->month)->where('approved',1)->get();

您可以尝试将local设置为:

setlocale(LC_TIME, 'German');
echo $dt->formatLocalized('%A %d %B %Y');

Carbon::setLocale('de');

查看此链接: http://carbon.nesbot.com/docs/

答案 1 :(得分:-1)

检查此代码以获取使用碳的月份 $ timestemp =“ 2016-4-5 05:06:01”;     $ month = Carbon \ Carbon :: createFromFormat('Y-m-d H:i:s',$ timestemp)-> month; dd($ month);