OOP의 날짜 비교 방법을 어떻게 선호합니까? 당신에 대해 어떻게 생각하십니까 :PHP 개체 지향 스타일의 날짜 비교
$date1 = new Date();
...
$date2 = new Date();
if ($date1 > $date2) {
...
}
strtotime 등등과 같은 것을 넣지 마십시오. OOP 만 입력하십시오.
OOP의 날짜 비교 방법을 어떻게 선호합니까? 당신에 대해 어떻게 생각하십니까 :PHP 개체 지향 스타일의 날짜 비교
$date1 = new Date();
...
$date2 = new Date();
if ($date1 > $date2) {
...
}
strtotime 등등과 같은 것을 넣지 마십시오. OOP 만 입력하십시오.
PHP DateTime 객체를 사용하는 경우 표준 비교 연산자를 사용하여 날짜를 비교할 수 있습니다. 자세한 정보 및 예는 DateTime::diff manual page을 참조하십시오.
다음은 매뉴얼에서 예제 # 2 :
$date1 = new DateTime("now");
$date2 = new DateTime("tomorrow");
var_dump($date1 == $date2);
var_dump($date1 < $date2);
var_dump($date1 > $date2);
Date
경우는 내부 DateTime
클래스 있었어야했는데, 코드가 절대적으로 괜찮습니다. 그러나 Date
이 사용자 지정 클래스 인 경우 코드가 예상대로 작동하지 않습니다. 다른 프로그래밍 언어와 달리 PHP는 코드가 작동하는 데 필요한 연산자 오버로딩을 허용하지 않습니다. PHP가 $date1
과 $date2
을 비교하는 방법을 알 수 없으며 어느 쪽이 더 큰지를 결정할 수 있기 때문에 클래스의 인스턴스에서 비교 연산자와 함께 작동하는 방법을 PHP에 알려주는 것이 필요합니다.
당신은 그러나 클래스에 대한 몇 가지 비교 방법을 정의 할 수 있습니다 ...
$date1->isLargerThan($date2);
글쎄, 그것은, 당신은 비교하려는 작업에하지 않습니다 달려? – alexn
@alexn 예. 나는 날짜를 비교하고 싶다. – zapadlo