| Server IP : 127.0.0.1 / Your IP : 216.73.216.48 Web Server : Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.2.12 System : Windows NT DESKTOP-3H4FHQJ 10.0 build 19045 (Windows 10) AMD64 User : win 10 ( 0) PHP Version : 8.2.12 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : D:/xampp/perl/vendor/lib/DateTime/TimeZone/Local/ |
Upload File : |
package DateTime::TimeZone::Local::Android;
use strict;
use warnings;
use namespace::autoclean;
our $VERSION = '2.46';
use Try::Tiny;
use parent 'DateTime::TimeZone::Local';
sub Methods {
return qw(
FromEnv
FromGetProp
FromDefault
);
}
sub EnvVars { return 'TZ' }
# https://chromium.googlesource.com/native_client/nacl-bionic/+/upstream/master/libc/tzcode/localtime.c
sub FromGetProp {
## no critic (InputOutput::ProhibitBacktickOperators)
my $name = `getprop persist.sys.timezone`;
chomp $name;
my $tz = try {
## no critic (Variables::RequireInitializationForLocalVars)
local $SIG{__DIE__};
DateTime::TimeZone->new( name => $name );
};
return $tz if $tz;
}
# See the link above. Android always defaults to UTC
sub FromDefault {
return try {
## no critic (Variables::RequireInitializationForLocalVars)
local $SIG{__DIE__};
DateTime::TimeZone->new( name => 'UTC' );
};
}
1;