Autor Zpráva
none
Profil
Potřeboval bych pomoct s fotmátováním datumu v php.

mam tenti skript


<?
function datum($datetime) {
$mesice = array ("ledna", "února", "března", "dubna", "května", "června", "července", "srpna", "září", "října", "listopadu", "prosince");
$den = date("j", $time);
$mesic = $mesice[Date ("n", $time) - 1];
$rok = date("Y", $time);
return($den.". ".$mesic." ".$rok);
}
?>


a takhle to zapisu pri vypisu

 <?php echo datum($tabulka["datum"]); ?>


mno alep roblém je ten ze mi to vypíše datum 1. ledna 1970. ta v čem je chyba, do db to ukladam jako datetime.
Hugo
Profil
A co tě na tom překvapuje? Používáš nedefinovanou proměnnou $time, takže funkce date() správně vrácí 1. ledna 1970.
anode
Profil
před prvním použitím $time ti tam chybí něco jako:
$pattern = '/^(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})/';
$elements = array();
preg_match($pattern,$sql_datetime,$elements);
list(,$year,$month,$day,$hour,$minute,$second) = $elements;
$time = mktime($hour,$minute,$second,$month,$day,$year);
DJ Miky
Profil
anode
$time=strtotime($tabulka["datum"]);

trochu jednodušší :-)
anode
Profil
DJ Miky
Jo, asi jo :)
24k_
Profil *
DJ MIKY i v PHP5? viz. http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=9&topic=30 442
anode
Profil
24k_: Samozřejmě... Dokonce i v PHP 5.0.2 a nižších. Zmiňovaná chyba se přece vůbec netýká absolutních časů.
In PHP 5 up to 5.0.2, "now" and other relative times are wrongly computed...
Myslím, že čtení manuálů ještě nikdy nikoho nezabilo...
Toto téma je uzamčeno. Odpověď nelze zaslat.