DynGig-Util
view release on metacpan or search on metacpan
lib/DynGig/Util/Time.pm view on Meta::CPAN
$time = DynGig::Util::Time->epoch( '09:12', 'America/Los_Angeles' );
=cut
sub epoch
{
my ( $class, $time, $zone ) = @_;
return $1 ? time + $time : $time if $time =~ /^([+-]?)\d+(?:\.\d+)?$/;
my $range = DynGig::Range::Time::Date
->setenv( timezone => $zone )->new( $time );
return $class->delta_epoch( delta => $time ) if $range->empty();
return $range->abs()->min() if $range->rel()->empty();
$time = DateTime->now();
$time->set_time_zone( $zone ) if defined $zone;
$time->set( DynGig::Range::Time::Date->sec2hms( $range->rel()->min() ) )
->epoch();
}
( run in 0.691 second using v1.01-cache-2.11-cpan-3989ada0592 )