Autor Zpráva
liborse
Profil
Dobrý den,

aktuálně řeším problém se spoluprácí mezi mssql (tsql) a php - konkrétně s prací s datumy. Měl jsem řešení, ale to jaksi selhává při vyšších datech. V databázi je datum uloženo v datetime. Výpis jsem řešil takto:

date('j.n.Y', strtotime($data["Datum"]))

Nicméně bohužel narážím na limit roku 2038, což je poměrně logické u 32bitu. Ano, bylo by možností přepsat procedury, aby vracely správný formát, ale mám tu spousty procedur a nerad bych vše předělával a raději si to ošetřil v php, abych nemusel měnit procedury (čerpá z nich jedna newebová aplikace, kterou nespravuji).

Ten samý problém mám při zápisu (uživatelé zadávají různá data), ale to zatím neřeším. Nejprve potřebuji vyřešit výpis z db (do formuláře ve formátu 28.7.1988). Pokud někdo víte, budu velmi rád. Jinak pracuji s mysql, tam takovéhle triviality neřeším, tady ale nemohu volit jiný sql server...
Edit: PHP máme ve verzi 5.4.3
Alphard
Profil
php.net/manual/en/datetime.format.php
liborse
Profil
Alphard:
S tím si právě hraju, ale pro výstup z databáze to zatím nezafungovalo, ale tam bych viděl spíše problém mezi stolem a židlí. ;)
Edit: :-) Vypadá to, že jsem na to opravdu šel špatně a řešení je opravdu jednoché. V procedurálním stylu zafungovalo toto:

$date = date_create($data["Datum"]);
echo date_format($date, 'j.n.Y');

Každopádně děkuji za pomoc.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: