/** * @covers Time::seconds_between */ public function testSeconds_between() { $seconds = 10; $from = new Time_DateTime(); $to = new Time_DateTime(); $to->sub_seconds($seconds); $this->assertEquals($seconds, Time::seconds_between($from, $to)); }
/** * @covers Time_DateTime::s2sqldate */ public function testS2sqldate() { $format_dmy = 'd.m.Y'; $this->assertEquals('1900-01-01', Time_DateTime::s2sqldate($format_dmy)); $format_dmy_Gi = 'd.m.Y - G:i'; $this->assertEquals('1900-01-01', Time_DateTime::s2sqldate($format_dmy_Gi)); $format_dmy_Gis = 'd.m.Y - G:i:s'; $this->assertEquals('1900-01-01', Time_DateTime::s2sqldate($format_dmy_Gis)); $this->assertEquals('0000-00-00', Time_DateTime::s2sqldate('')); }
/** * Преобразует значение * * Преобразует значение полученное из БД в нужный формат, для работы с ним в php * * @params DB_ColumnMeta $metadata мета-данные колонки * @params mixed $value значение * * @return mixed */ public function cast_column(DB_ColumnMeta $metadata, $value) { switch ($metadata->type) { case 'datetime': case 'timestamp': case 'date': return is_null($value) ? null : Time_DateTime::parse($value); case 'time': return is_null($value) ? null : Time_DateTime::parse($value, TIME::FMT_HMS); case 'boolean': return $value ? true : false; case 'longlong': case 'int24': case 'integer': case 'long': case 'tiny': case 'short': return is_null($value) ? null : (int) $value; case 'float': case 'double': return is_null($value) ? null : (double) $value; default: return $value; } }
/** * @param Time_DateTime $value * * @return Time_DateTime */ protected function set_min(Time_DateTime $value) { $this->attrs['min'] = $value->format(Service_Google_Adwords::FMT_DATE); return $this; }
/** * Переводит дату из строкового представления в timestamp * * В качестве параметра принимаются значения вида: "d.m.y", "d.m.y - G:i", "d.m.y - G:i:s". * Если передана некорректная строка, то будет возвращен ноль. * * @params string $in дата * * @return integer */ public static function s2date($in) { $date = Time_DateTime::parse($in, '!d.m.Y'); if (!$date) { $date = Time_DateTime::parse($in, 'd.m.Y - G:i'); } if (!$date) { $date = Time_DateTime::parse($in, 'd.m.Y - G:i:s'); } return $date ? $date->ts : 0; }
/** * Форматирует SQL DATE/DATETIME в соответствии с переданным форматом * * @param string $format * @param string|int $time * * @return string */ static function sqldateformat($format, $time) { return Time_DateTime::sqldateformat($format, $time); }