PHP에서 date_sub() 함수를 사용하는 방법

Phpeseo Date Sub Hamsuleul Sayonghaneun Bangbeob



그만큼 date_sub() 의 함수이다 날짜 시간 클래스는 PHP의 날짜 및 시간 확장의 일부입니다. 주어진 날짜에서 지정된 간격을 빼는 데 사용됩니다. 현재 날짜에서 하나 이상의 일, 월 또는 년을 빼서 미래 날짜를 계산하는 데 사용할 수 있습니다. 그만큼 date_sub() 함수는 새로운 것을 반환합니다 날짜 시간 계산이 이루어진 후 날짜와 시간을 나타내는 개체입니다.

기본 구문

사용 구문 date_sub() 기능은 다음과 같습니다.

date_sub ( 날짜 시간 $객체 , 날짜간격 $간격 )

여기, $객체 이다 날짜 시간 간격을 빼려는 개체 및 $간격 이다 날짜간격 빼려는 간격을 지정하는 개체입니다. 다음을 사용하려면 두 인수가 모두 필요합니다. date_sub() 올바르게 작동합니다.







DateInterval 작업

사용하려면 date_sub() 함수를 생성해야 합니다. 날짜간격 원래 날짜-시간에서 빼려는 시간을 지정하는 개체입니다. 날짜간격 개체는 다음을 사용하여 만들 수 있습니다. 날짜간격 건설자. 생성자는 P1D(1일), P1M(1개월), P1Y(1년) 및 P1DT1H(1일 1시간)와 같은 형식으로 간격을 지정하는 문자열 매개변수를 사용합니다.



// 하루 빼기
$간격 = 새로운 날짜간격 ( 'P1D' ) ; // 한 달 빼기
$간격 = 새로운 날짜간격 ( '10분' ) ;

// 1년 빼기
$간격 = 새로운 날짜간격 ( 'P1Y' ) ;

PHP date_sub() 함수 사용 방법

일단 당신이 날짜간격 개체와 결합할 수 있습니다. 날짜 시간 새 날짜-시간을 계산하는 개체입니다. 다음은 현재 날짜에서 하루를 빼는 예입니다.





$datetime = 새로운 날짜 시간 ( ) ;

$간격 = 새로운 날짜간격 ( 'P1D' ) ;

date_sub ( $datetime , $간격 ) ;

에코 $datetime -> 체재 ( 'Y-m-d H:i:s' ) ;

?>

보시다시피 새 날짜/시간은 현재 날짜보다 하루 빠릅니다.





다음을 사용하여 DateTime 객체에서 시, 분, 초를 뺄 수도 있습니다. date_sub() 기능. 시간을 빼려면 날짜 간격을 PT1H로 전달할 수 있습니다. 즉, 1시간을 뺍니다. 예를 들어 다음 코드를 고려하십시오.





$datetime = 새로운 날짜 시간 ( '2023-05-16 14:43:00' ) ;

date_sub ( $datetime , 새로운 날짜간격 ( 'PT1H' ) ) ;

에코 $datetime -> 체재 ( 'Y-m-d H:i:s' ) ;

?>

이것은 DateTime 객체에서 1시간을 빼고 새 값으로 객체를 업데이트합니다. 다음을 사용하여 새 값에 액세스할 수 있습니다. 체재() DateTime 객체의 함수.

예제 1: 다른 간격 빼기

그만큼 date_sub() 기능을 사용하면 일뿐만 아니라 다양한 간격을 뺄 수 있습니다. 주어진 날짜와 시간에서 2시간 30분을 빼려는 시나리오를 생각해 봅시다.



$날짜 = 새로운 날짜 시간 ( '2023-11-02 10:32:45' ) ;

$간격 = 새로운 날짜간격 ( 'PT1H15M' ) ;

date_sub ( $날짜 , $간격 ) ;

에코 $날짜 -> 체재 ( 'Y-m-d H:i:s' ) ;

?>

이 예에서는 날짜와 시간을 나타내는 DateTime 객체를 만듭니다. “2023-11-02 10:32:45” . 우리는 또한 날짜간격 'PT1H15M' 형식을 사용하여 1시간 15분의 기간을 나타내는 객체. 그런 다음 date_sub() 날짜와 시간에서 간격을 빼는 기능.

예 2: 여러 간격 빼기

당신은 또한 사용할 수 있습니다 date_sub() DateTime 개체에서 여러 간격을 빼는 함수입니다. 구문은 간단합니다. 빼려는 각 간격에 대해 새 DateInterval 개체를 만들고 모두 date_sub() 배열로 기능합니다.



$간격 = 정렬 (

새로운 날짜간격 ( 'P1Y' ) ,

새로운 날짜간격 ( 'P6M' ) ,

새로운 날짜간격 ( 'P3D' )

) ;

$datetime = 새로운 날짜 시간 ( ) ;

각각 ( $간격 ~처럼 $간격 ) {

date_sub ( $datetime , $간격 ) ;

}

에코 $datetime -> 체재 ( 'Y-m-d H:i:s' ) ;

?>

이 예에서는 날짜에서 1년 6개월 3일을 뺍니다.

예 3: 시간대가 있는 date_sub()

사용시 주의할 점 한 가지 date_sub() 기능은 귀하의 시간대에 영향을 줄 수 있다는 것입니다. 날짜 시간 물체. 기본적으로, 날짜 시간 개체는 서버의 시간대를 사용합니다. 그러나 다른 시간대를 사용하려면 다음을 사용하여 명시적으로 설정할 수 있습니다. setTimezone() 방법.



$datetime = 새로운 날짜 시간 ( '지금' , 새로운 날짜시간대 ( '아메리카/뉴욕' ) ) ;

$간격 = 새로운 날짜간격 ( 'P1D' ) ;

date_sub ( $datetime , $간격 ) ;

에코 $datetime -> 체재 ( 'Y-m-d H:i:s' ) ;

?>

이 예에서는 시간대를 America/New_York로 설정하고 datetime에서 하루를 뺍니다.

를 사용하여 간격을 뺄 때 date_sub() 결과 날짜가 유효하지 않은 경우 자동으로 조정된다는 점에 유의해야 합니다.

결론

그만큼 date_sub() PHP의 함수는 DateTime 객체에서 간격을 빼는 편리한 방법을 제공합니다. 개발자는 이 기능을 사용하여 주어진 날짜와 시간에서 일, 시, 분 또는 복잡한 간격을 빼는 등의 작업을 쉽게 수행할 수 있습니다. 그만큼 date_sub() 함수는 날짜 계산을 유연하고 정확하게 처리하므로 PHP 응용 프로그램에서 날짜 및 시간 작업에 유용한 도구입니다.