티스토리 뷰

$now = new DateTime('now');
$yesterday = clone $now;
$yesterday->sub(new DateInterval('P1D'));
echo $yesterday->format('Y-m-d H:i:s');


$raw = '22. 11. 2016';
$start = DateTime::createFromFormat('d. m. Y', $raw);
$end = clone $start;
$end->add(new DateInterval('P1M6D')); // $start를 복제한 다음 한 달하고 6일을 더한다.
echo 'Start date: ' . $start->format('Y-m-d') . "\n";
$diff = $end->diff($start);
echo 'Difference: ' . $diff->format('%m month, %d days (total: %a days)') . "\n";
// Difference: 1 month, 6 days (total: 37 days)
//DateTime 개체를 일반적인 비교 연산자를 이용해서 비교하는 것이 가능합니다.

if ($start < $end) {
    echo "Start is before end!\n";
}

//DateTime에 대한 마지막 예제는 DatePeriod 클래스에 대한 것입니다.
//이 클래스는 반복적으로 발생하는 사건을 다루는데 사용됩니다.
//start와 end라는 두 개의 DateTime 개체와 시간 간격을 나타내는 DateInterval 개체 하나를 받아서, 지정된 기간에 발생하는 모든 사건을 리턴해줍니다.

// $start 와 $end 사이의 모든 목요일을 얻는다.
$periodInterval = DateInterval::createFromDateString('first thursday');
$periodIterator = new DatePeriod($start, $periodInterval, $end, DatePeriod::EXCLUDE_START_DATE);
foreach ($periodIterator as $date) {
    // 지정된 기간 안에 있는 모든 날짜를 출력한다.
    echo $date->format('Y-m-d') . ' ';
}
// Each set of intervals is equal.
$i = new DateInterval('P1D');
$i = DateInterval::createFromDateString('1 day');

$i = new DateInterval('P2W');
$i = DateInterval::createFromDateString('2 weeks');

$i = new DateInterval('P3M');
$i = DateInterval::createFromDateString('3 months');

$i = new DateInterval('P4Y');
$i = DateInterval::createFromDateString('4 years');

$i = new DateInterval('P1Y1D');
$i = DateInterval::createFromDateString('1 year + 1 day');

$i = new DateInterval('P1DT12H');
$i = DateInterval::createFromDateString('1 day + 12 hours');

$i = new DateInterval('PT3600S');
$i = DateInterval::createFromDateString('3600 seconds');
http://php.net/book.datetime

$begin = new DateTime( '2012-08-01' ); $end = new DateTime( '2012-08-31' ); $end = $end->modify( '+1 day' ); $interval = new DateInterval('P1D'); $daterange = new DatePeriod($begin, $interval ,$end); foreach($daterange as $date){ echo $date->format("Ymd") . "<br>"; }



저작자 표시
신고

'웹개발 > Php' 카테고리의 다른 글

PHP CLI 정리하기  (0) 2017.06.08
PHP - DateTime을 활용하여 날짜 계산하기  (0) 2017.04.04
state 패턴 샘플  (0) 2017.02.06
데코레이터패턴 샘플  (0) 2017.02.06
옵저버패턴샘플  (0) 2017.02.06
Apater 패턴 샘플  (0) 2017.02.06
댓글
댓글쓰기 폼