Laravel에서 현재 날짜, 시간, 요일 가져 오기


116

laravel을 사용하여 현재 날짜, 시간, 요일을 가져와야합니다.

나는 에코를 시도 $ldate = new DateTime('today');했고$ldate = new DateTime('now');

그러나 항상 1을 반환합니다.

Larvel에서 현재 날짜, 시간, 요일을 어떻게 얻을 수 있습니까?


4
사용 date(). 쉬운 일을 복잡하게 만들고 불필요한 오버 헤드를 추가 할 필요가 없습니다.
Mārtiņš Briedis 2015 년

1
나는 주된 문제는 당신이하고있는 echo $now = new DateTime();반면에 당신은 echo(즉, do $now = new DateTime();) 없이 그냥 변수를 설정해야한다고 생각 한다. 그리고 당신이 그것을 에코하고 싶을 때 당신은 format()방법 ( 문서 ) 을 사용해야한다 :echo $now->format('Y-m-d');
alexrussell

답변:


212

Laravel에는 Carbon종속성이 첨부되어 있습니다.

Carbon::now(), Carbon\Carbon필요한 경우 네임 스페이스를 포함합니다 .

편집 (사용 및 문서)

날짜와 시간을 검색하여 문자열로 출력하고 싶다고 가정 해 보겠습니다.

$mytime = Carbon\Carbon::now();
echo $mytime->toDateTimeString();

이것은 일반적인 형식으로 출력되며 Y-m-d H:i:s미리 만들어진 형식이 많이 있으며 Carbon으로 PHP 날짜 시간 문자열을 다시 엉망으로 만들 필요가 없을 것입니다.

문서 : https://github.com/briannesbitt/Carbon

Carbon의 문자열 형식 : http://carbon.nesbot.com/docs/#api-formatting


4
Carbon \ Carbon 사용; 네임 스페이스 선언입니다
Kiren Siva

laravel 5에서 2016/2/20에서 dayname을 추출하는 방법 ?? 회신 해 주시기 바랍니다
사빈 maharjan

6
@AngularAngularAngular 사용Carbon::now()->format('d-m-Y')
EThaizone 조

1
Carbon 문서를 따라 잡으십시오. 아무도 당신을 위해 코드를 작성하지 않습니다. 대답은 OP에서 요청한 내용을 제공합니다.
kratos

61

이 시도,

$ldate = date('Y-m-d H:i:s');

13
@Chennai "laravel"방식을 수행하는 데 왜 필요합니까? Laravel은 "PHP는 방법"입니다 :)
마틴 Briedis

3
완벽하게 테스트 된 Carbon과 같은 클래스에 액세스 할 수있는 경우이를 활용하는 것이 항상 유용합니다. 이미 필요한 것을 더 많이 수행하는 강력한 구현이 있는데 왜 바퀴를 재발 명할까요?
Everon

3
@Everon 내장 된 핵심 기능을 사용하는 것은 바퀴를 재창조하는 것이 아닙니다. 사람들은 항상 복잡하게 일하려는 : S
마틴 Briedis

3
글로벌 구성에서 올바른 시간대를 설정하기 만하면 탄소 작업과 동일한 방식으로 완료됩니다. 더 멋져 보이기 때문에 "라 라벨 방식"을하는 것은 어리석은 일입니까? 이것이 어떻게 \Carbon\Carbon::now()->format('d.m.Y');더 낫 date('d.m.Y')습니까?
Mārtiņš Briedis 2015 년

2
고마워요 그래서 date('Y-m-d H:i:s')어쨌든 다 치지 않겠죠?
AngularAngularAngular 2015 년

51

Php에는 매우 잘 작동하는 날짜 기능이 있습니다. laravel 및 blade를 사용하면 추악한 <?php에코 태그 없이 이것을 사용할 수 있습니다 . 예를 들어 .blade.php파일 에서 다음을 사용 합니다.

Copyright © {{ date('Y') }}

... 그리고 Laravel / blade는 그것을 올해로 번역합니다. 날짜 시간과 요일을 원하면 다음과 같이 사용합니다.

{{ date('Y-m-d H:i:s') }}

16

사용하려는 경우 datetime class

$dt = new DateTime();
echo $dt->format('Y-m-d H:i:s');

11

Laravel 5.5 이후에는 now () 함수를 사용하여 현재 날짜와 시간을 가져올 수 있습니다.

블레이드 파일에 다음과 같이 작성하여 날짜를 인쇄 할 수 있습니다.

{{  now()->toDateTimeString('Y-m-d') }}

여기에 이미지 설명 입력


:) 이건 정말 질문에 대답하지 않지만, 저를 도와
루이스

6

여기에 다른 방법이 있습니다.

Use \Carbon\Carbon;

$ date = Carbon :: now ();

echo $ date-> toRfc850String ();

출력은 다음과 같습니다.

Saturday, 11-May-19 06:28:04 UTC

4

LARAVEL 5.x 용

이걸 찾고 있었던 것 같아요

$errorLog->timestamps = false;
$errorLog->created_at = date("Y-m-d H:i:s");

3

이것을 시도 할 수 있습니다.

use Carbon\Carbon;

$date = Carbon::now()->toDateTimeString();

3

어때

    $date = Carbon::now();
    return $date->toArray();

너에게 줄 것이다

{
  "연도": 2019,
  "월": 1,
  "일": 27,
  "dayOfWeek": 0,
  "dayOfYear": 26,
  "시간": 10,
  "분": 28,
  "초": 55,
  "englishDayOfWeek": "일요일",
  "마이크로": 967721,
  "타임 스탬프": 1548570535,
  "formatted": "2019-01-27 10:28:55",
  "시간대": {
    "timezone_type": 3,
    "timezone": "아시아 / 두바이"
  }
}

동일한 소품은

    반환 [
             '날짜'=> $ date-> format ( 'Ym-d'),
              '연도'=> $ date-> year,
              '월'=> $ 날짜-> 월,
              'day'=> $ date-> day,
              '시간'=> $ date-> 시간,
              'isSaturday'=> $ date-> isSaturday (),
          ];



1

몇 명의 도우미가 있습니다.

도우미 now () https://laravel.com/docs/7.x/helpers#method-now

helper now ()에는 선택적 인수 인 시간대가 있습니다. 이제 다음을 사용할 수 있습니다.

now();

또는

now("Europe/Rome");

같은 방식으로 helper today () https://laravel.com/docs/7.x/helpers#method-today를 사용할 수 있습니다 . 이것은 now ()의 "같은 것"이지만 시간, 분, 초가 없습니다.

마지막에는 후드 아래에서도 Carbon을 사용합니다.


0
//vanilla php
Class Date {
    public static function date_added($time){
         date_default_timezone_set('Africa/Lagos');//or choose your location
        return date('l F Y g:i:s ',$time);

    }


}

0

공급자 폴더에서 AppServicesProvider의 시간대를 설정할 수 있습니다.

public function boot()
{
    Schema::defaultStringLength(191);
    date_default_timezone_set('Africa/Lagos');
}

그리고 use Import Carbon\Carbon 간단히 use Carbon::now()// 현재 시간을 얻으려면 형식을 지정해야하는 경우 설명서에서 기본 설정에 따라 더 많은 옵션을 확인하려면 여기에 링크 설명을 입력하십시오.


0

오늘의 날짜를 원한다면

네임 스페이스 사용

use Carbon\Carbon as time;

코드,

 $mytime=time::now();
 $date=$mytime->toRfc850String();
 $today= substr($date, 0, strrpos($date, ","));
 dd($today)

출력, "Sunday"


-1

$ dayOfYear = today ()-> dayOfYear; $ dayOfWeek = today ( 'Europe / London')-> dayOfWeek;

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.