(PHP 5 >= 5.1.0)
date_default_timezone_get — Gets the default timezone used by all date/time functions in a script
In order of preference, this function returns the default timezone by:
Reading the timezone set using the date_default_timezone_set() function (if any)
Reading the TZ environment variable (if non empty) (Prior to PHP 5.3.0)
Reading the value of the date.timezone ini option (if set)
Querying the host operating system (if supported and allowed by the OS)
If none of the above succeed, date_default_timezone_get() will return a default timezone of UTC.
Returns a string.
Version | Beschreibung |
---|---|
5.3.0 | The TZ environment variable is no longer used to guess the timezone. |
Beispiel #1 Getting the default timezone
<?php
date_default_timezone_set('Europe/London');
if (date_default_timezone_get()) {
echo 'date_default_timezone_set: ' . date_default_timezone_get() . '<br />';
}
if (ini_get('date.timezone')) {
echo 'date.timezone: ' . ini_get('date.timezone');
}
?>
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
date_default_timezone_set: Europe/London date.timezone: Europe/London
Beispiel #2 Getting the abbreviation of a timezone
<?php
date_default_timezone_set('America/Los_Angeles');
echo date_default_timezone_get() . ' => ' . date('e') . ' => ' . date('T');
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
America/Los_Angeles => America/Los_Angeles => PST
If you want to get the abbrivation (3 or 4 letter), instead of the long timezone string you can use date('T') function like this:
Input:
date_default_timezone_set('America/Los_Angeles');
echo date_default_timezone_get();
echo ' => '.date('e');
echo ' => '.date('T');
Output:
America/Los_Angeles => America/Los_Angeles => PST
date_default_timezone_get() will still emit a warning in E_STRICT if the timezone is not set; either by date_default_timezone_set() or the ini option of date.timezone.
This is probably not a big deal, but I thought I would contribute what I found.