- date_default_timezone_set: documentation ( source)
- date: documentation ( source)
- define: documentation ( source)
<?php
$emember_flag = 0;
date_default_timezone_set('Asia/Singapore');
define('LF', "\n");
define('DATE_FORMAT', 'Y-m-d H:i:s');
# The format 'today' works the same as 'now' except the time is set to 00:00:00
# More info at http://sg3.php.net/manual/en/datetime.formats.relative.php
$end_date = new DateTime('today');
# Effective end date is the end of the last day of current month.
# But we are using 'first day of next month' because our comparison uses < not <=
$end_date->modify('first day of next month');
$sumend_timestamp = $end_date->getTimestamp();
if ($emember_flag) :
$intervalSpec = 'P3M';
else :
$intervalSpec = 'P1Y';
endif;
$upgrade_interval = new DateInterval($intervalSpec);
$start_date = clone $end_date;
$start_date->sub($upgrade_interval);
$sumstart_timestamp = $start_date->getTimestamp();
echo date(DATE_FORMAT, $sumend_timestamp) . LF;
echo date(DATE_FORMAT, $sumstart_timestamp) . LF;