Google
 

Monday, December 17, 2007

Get Unix Timestamp for a Date

I made this simple class to add/remove time to my subscription service. It makes it easy to make new time without having to write the whole mktime line everytime. I'm posting it here, as it might help somebody.

<?php
class mkTime {
var $day = 0;
var $month = 0;
var $year = 0;
var $hour = 0;
var $minute = 0;
var $sec = 0;
var $iniTime;
var $returnFormat = "Y-m-d H:i:s";

function addTime() {
$newTime = mktime(
date("H",$this->iniTime)+$this->hour,
date("i",$this->iniTime)+$this->minute,
date("s",$this->iniTime)+$this->sec,
date("m",$this->iniTime)+$this->month,
date("d",$this->iniTime)+$this->day,
date("Y",$this->iniTime)+$this->year
);
$rtnTime = date($this->returnFormat,$newTime);
return $rtnTime;
}

function removeTime() {
$newTime = mktime(
date("H",$this->iniTime)-$this->hour,
date("i",$this->iniTime)-$this->minute,
date("s",$this->iniTime)-$this->sec,
date("m",$this->iniTime)-$this->month,
date("d",$this->iniTime)-$this->day,
date("Y",$this->iniTime)-$this->year
);
$rtnTime = date($this->returnFormat,$newTime);
return $rtnTime;
}

}

$t = new mkTime; // call the class
$t->iniTime = time(); // set initial time
$t->year = 1; // add/remove a year
$newTime = $t->addTime(); // call the add time function
echo "$newTime

"; // write result to browser

$t = new mkTime; // call the class
$t->iniTime = time(); // set initial time
$t->year = 1; // add/remove a year
$t->returnFormat = "d/m-Y @ H:i:s"; // time return format
$newTime = $t->removeTime(); // call the remove time function
echo "$newTime

"; // write result to browser
?>