× Aktuálně z oboru

Vyšla nová verze SSH klienta PuTTy, opravuje některé bezpečnostní problémy [ clanek/2017022200-vysla-nova-verze-ssh-klienta-putty-opravuje-nektere-bezpecnostni-problemy/ ]
Celá zprávička [ clanek/2017022200-vysla-nova-verze-ssh-klienta-putty-opravuje-nektere-bezpecnostni-problemy/ ]

Čeština v názvech měsíců ve funkci date()

[ http://programujte.com/profil/13487-petr-laslo/ ]Google [ ?rel=author ]       [ http://programujte.com/profil/118-zdenek-lehocky/ ]Google [ plus.google.com/+ZdenekLehocky?rel=author ]       24. 6. 2008       30 456×

PHP v sobě obsahuje několik desítek až stovek vlastních předdefinovaných funkcí, mezi které patří i funkce date();. Cílem dnešního tutoriálu je seznámit začátečníky s touto funkcí a hlavně je naučit zobrazovat české názvy měsíců.

K čemu funkce date() slouží?

Už z názvu vyplývá, že se jedná o práci s datem. Kromě práce s datem umí f-ce zobrazit i čas. Formát dat, které chcete nastavit, určují parametry v závorce – date(”j.F Y”);. Pokud použijete parametry jako já, zobrazí se vám datum ve formátu 28. April 2007. Přehled všech parametrů je uveden v manuálu k PHP [ http://cz.php.net/manual/en/function.date.php ]. Teď ovšem nastává problém. Nechceme přeci, aby na českém webu f-ce date(); vracela anglické názvy měsíců, ale naopak chceme české názvy. K tomu, aby se nám to povedlo, si musíme napsat vlastní f-ci, kterou pojmenujeme datum();

Funkce datum();

Tuto f-ci si uložte do samostatného souboru a do svých skriptů zahrnujte pomocí příkazu include nebo require.

  1. Nejprve si vytvoříme pole, které bude obsahovat seznam všech anglických měsíců:
    $aj = array("January","February","March","April","May","June","July","August","September","October","November","December");
  2. Druhým krokem je vytvoření úplně stejného pole jen s názvy měsíců v češtině:
     $cz = array("ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince");
  3. Ve třetím kroku do proměnné $datum uložím fci, která zamění anglický April za český „dubna“ ve fci date("j.F Y");:
    $datum = str_replace($aj, $cz, date("j.F Y")); 
  4. A nakonec nám f-ce vrátí již upravené datum:
    return $datum; 
  5. Fci stačí použit zápisem do kódu datum();

Pokud vše proběhlo v pořádku, budou se vám již měsíce zapisovat česky.

Kompletní řešení

function datum(){
  $aj = array("January","February","March","April","May","June","July","August","September","October","November","December");
  $cz = array("ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince");
  $datum = str_replace($aj, $cz, date("j.F Y"));
  return $datum;
} 

Závěr

Tento článek jsem opět zaměřil na skupinu lidí, kteří se skriptováním v PHP začínají. U dalšího článku na shledanou.


Článek stažen z webu Programujte.com [ http://programujte.com/clanek/2008062001-cestina-v-nazvech-mesicu-ve-funkci-date/ ].