| // +----------------------------------------------------------------------+ // // $Id$ // /** * @package MDB2 * @category Database * @author Lukas Smith */ /** * Several methods to convert the MDB2 native timestamp format (ISO based) * to and from data structures that are convenient to worth with in side of php. * For more complex date arithmetic please take a look at the Date package in PEAR * * @package MDB2 * @category Database * @author Lukas Smith */ class MDB2_Date { // {{{ mdbNow() /** * return the current datetime * * @return string current datetime in the MDB2 format * @access public */ public static function mdbNow() { return date('Y-m-d H:i:s'); } // }}} // {{{ mdbToday() /** * return the current date * * @return string current date in the MDB2 format * @access public */ public static function mdbToday() { return date('Y-m-d'); } // }}} // {{{ mdbTime() /** * return the current time * * @return string current time in the MDB2 format * @access public */ public static function mdbTime() { return date('H:i:s'); } // }}} // {{{ date2Mdbstamp() /** * convert a date into a MDB2 timestamp * * @param int hour of the date * @param int minute of the date * @param int second of the date * @param int month of the date * @param int day of the date * @param int year of the date * * @return string a valid MDB2 timestamp * @access public */ public static function date2Mdbstamp($hour = null, $minute = null, $second = null, $month = null, $day = null, $year = null) { return MDB2_Date::unix2Mdbstamp(mktime($hour, $minute, $second, $month, $day, $year, -1)); } // }}} // {{{ unix2Mdbstamp() /** * convert a unix timestamp into a MDB2 timestamp * * @param int a valid unix timestamp * * @return string a valid MDB2 timestamp * @access public */ public static function unix2Mdbstamp($unix_timestamp) { return date('Y-m-d H:i:s', $unix_timestamp); } // }}} // {{{ mdbstamp2Unix() /** * convert a MDB2 timestamp into a unix timestamp * * @param int a valid MDB2 timestamp * @return string unix timestamp with the time stored in the MDB2 format * * @access public */ public static function mdbstamp2Unix($mdb_timestamp) { $arr = MDB2_Date::mdbstamp2Date($mdb_timestamp); return mktime($arr['hour'], $arr['minute'], $arr['second'], $arr['month'], $arr['day'], $arr['year'], -1); } // }}} // {{{ mdbstamp2Date() /** * convert a MDB2 timestamp into an array containing all * values necessary to pass to php's date() function * * @param int a valid MDB2 timestamp * * @return array with the time split * @access public */ public static function mdbstamp2Date($mdb_timestamp) { list($arr['year'], $arr['month'], $arr['day'], $arr['hour'], $arr['minute'], $arr['second']) = sscanf($mdb_timestamp, "%04u-%02u-%02u %02u:%02u:%02u"); return $arr; } // }}} } ?>