티스토리 뷰

$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 - DateTime을 활용하여 날짜 계산하기  (0) 2017.04.04
state 패턴 샘플  (0) 2017.02.06
데코레이터패턴 샘플  (0) 2017.02.06
옵저버패턴샘플  (0) 2017.02.06
Apater 패턴 샘플  (0) 2017.02.06
추상팩토리 패턴 샘플 소스  (0) 2017.02.06
댓글
댓글쓰기 폼