Laravel의 매우 유용한 7가지 Carbon 메소드

黄舟
풀어 주다: 2023-03-16 11:02:01
원래의
3606명이 탐색했습니다.

PHP 애플리케이션을 작성할 때 날짜와 시간을 처리해야 하는 경우가 많습니다. Carbon은 날짜와 시간을 더 쉽게 처리할 수 있는 PHP DateTime 클래스의 API 확장을 상속합니다. 이 기사에서는 주로 Laravel에서 매우 유용하지만 거의 사용되지 않는 7가지 메서드를 공유합니다. .탄소법을 알고 계시다면 도움이 필요한 친구들이 참고할 수 있습니다.

머리말

우리는 날짜와 시간을 처리하기 위해 Carbon을 여러번 사용한다는 사실을 다들 아셔야겠죠? 그러나 전체 문서를 읽고 그 문서에 포함된 방법을 이해한 사람은 얼마나 됩니까? 잘 알려진 now() 및 format() 메서드 외에도 Carbon에는 다른 유용한 메서드가 많이 있습니다.

아래를 살펴보겠습니다.

1.isX: True/False

Carbon 객체가 오늘, 주말, 윤년 등인지 확인하는 방법에는 여러 가지가 있습니다. 다음은 공식 문서에 나열되어 있습니다.


2. isBirthday

위 목록 외에도 Carbon에는 날짜가 누군가의 생일인지 확인하는 방법도 있습니다. 월과 일을 별도로 확인하는 것 외에도 다음을 수행할 수도 있습니다.

<?php
$dt->isWeekday();
$dt->isWeekend();
$dt->isYesterday();
$dt->isToday();
$dt->isTomorrow();
$dt->isFuture();
$dt->isPast();
$dt->isLeapYear();
$dt->isSameDay(Carbon::now());
로그인 후 복사


3. StartOfX 및 EndOfX 목록

다음은 startOfX 시리즈 및 endOfX 시리즈입니다.

$born = Carbon::createFromDate(1987, 4, 23);
$noCake = Carbon::createFromDate(2014, 9, 26);
$yesCake = Carbon::createFromDate(2014, 4, 23);
var_dump($born->isBirthday($noCake));  // bool(false)
var_dump($born->isBirthday($yesCake));
로그인 후 복사


4오늘, 내일, 어제

세 가지 간단하지만 매우 유용한 방법, 지금()을 호출할 필요가 없습니다. 그런 다음 시간, 분, 초를 바꾼 다음 일 수를 더하거나 뺍니다.

$dt = Carbon::create(2012, 1, 31, 12, 0, 0);
echo $dt->startOfDay(); // 2012-01-31 00:00:00
echo $dt->endOfDay(); // 2012-01-31 23:59:59
echo $dt->startOfMonth(); // 2012-01-01 00:00:00
echo $dt->endOfMonth(); // 2012-01-31 23:59:59
echo $dt->startOfYear(); // 2012-01-01 00:00:00
echo $dt->endOfYear(); // 2012-12-31 23:59:59
echo $dt->startOfDecade(); // 2010-01-01 00:00:00
echo $dt->endOfDecade(); // 2019-12-31 23:59:59
echo $dt->startOfCentury(); // 2000-01-01 00:00:00
echo $dt->endOfCentury(); // 2099-12-31 23:59:59
echo $dt->startOfWeek(); // 2012-01-30 00:00:00
echo $dt->endOfWeek(); // 2012-02-05 23:59:59
로그인 후 복사


5. DiffForHumans + 현지화


diffForHumans()라는 이 메서드를 사용했을 수도 있습니다. 이 메서드는 사람이 읽을 수 있는 방식으로 두 날짜 간의 차이를 반환합니다.

$today = Carbon::today(); // assuming 2016-06-24
echo $today;        // 2016-06-24 00:00:00
$tomorrow = Carbon::tomorrow();
echo $tomorrow;       // 2016-06-25 00:00:00
$yesterday = Carbon::yesterday();
echo $yesterday;       // 2016-06-23 00:00:00
로그인 후 복사

하지만 당신은 현지화도 가능한가요? 중국어와 같이 위치를 변경하세요:


echo Carbon::now()->subDays(5)->diffForHumans(); // 5 days ago
로그인 후 복사


6. 지금()을 원하는 시간으로 변경하세요


Carbon::setLocale(&#39;zh&#39;);
echo Carbon::now()->addYear()->diffForHumans(); // 一年前
로그인 후 복사


7. 할 수 있다 요일을 바꾸려면 다음 상수를 사용하세요.

$knownDate = Carbon::create(2001, 5, 21, 12); // 创建测试日期
Carbon::setTestNow($knownDate);      // set the mock 
echo Carbon::now();         // 2001-05-21 12:00:00
로그인 후 복사
위에서 언급한 유용한 방법을 모두 알고 계시나요? 의견에 유용하다고 생각되는 방법을 나열할 수 있습니다.

요약


위 내용은 Laravel의 매우 유용한 7가지 Carbon 메소드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿