Error: [2048]: date() [function.date]: It is not safe to ... (PHP)
Pri práci s funkciou date() v jazyku PHP môže programátor naraziť na chybové hlásenie "Error: [2048]: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Berlin' for 'CET/1.0/no DST' instead."Toto chybové hlásenie vzniká, ak v php.ini nie je nastavená časová zóna.Príklad: Zistenie, aká časová zóna je nastavená v php.ini.
1
echo ini_get("date.timezone");
Ak výstupom je prázdny reťazec, časová zóna nie je nastavená a skript vypíše hlásenie 2048. Pre nastavenie časovej zóny je možné použiť funkciu date_default_timezone_set() alebo ini_set() prípadne nastaviť časovú zónu v php.ini. Príklad: Ak výsledkom je string(0) "", časová zóna nie je nastavená.
1
var_dump(ini_get("date.timezone"));
Po nastavení časovej zóny je následne možné pracovať s funkciou date() bez zobrazenia chybového hlásenia.Príklad: Možný spôsob potlačenia chybového hlásenia 2048.
1
2
3
date_default_timezone_set('UTC');
$localDateTime = date('l - d.m.Y H:i:s', time());
echo $localDateTime, "<br>";
Príklad: Ďalší spôsob potlačenia chybového hlásenia 2048.
1
2
3
ini_set("date.timezone", "UTC");
$localDateTime = date('l - d.m.Y H:i:s', time());
echo $localDateTime, "<br>";
Záver
Dúfam, že vám tento článok pomohol vyriešiť váš problém. V prípade, že ste sa stretli s iným typom problému pri práci s dátumom, môžete sa o svoje skúsenosti podeliť prostredníctvom komentára.29.11.2012 (updated 29.1.2013), Matej LednárCategory: PHPPHP,programovanie,error,PHPNo part of this article may be reproduced without mention of the author and URL to this website.For more information, see the About section.