Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
Skrypt - Data z polskimi nazwami miesciąca. - Wersja do druku

+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: Programowanie, Bazy danych (https://www.webmastertalk.pl/forum-programowanie-bazy-danych)
+--- Wątek: Skrypt - Data z polskimi nazwami miesciąca. (/thread-skrypt-data-z-polskimi-nazwami-miesciaca)



Skrypt - Data z polskimi nazwami miesciąca. - ukasz - 30-07-2009

Witam, na tym forum jestem nowy, jak i jestem nowy jeśli chodzi o programowanie w PHP, aczkolwiek coś, niecoś już potrafię.

Stworzyłem na szybko taki skrypcik, który wyświetla dzisiejszą datę wraz z polskimi nazwami miesiąca.

Kod PHP:
<?php

function Data() {

 
$month date('m');

 if (
$month == 1) echo 'Styczeń';
 if (
$month == 2) echo 'Luty';
 if (
$month == 3) echo 'Marzec';
 if (
$month == 4) echo 'Kwiecień';
 if (
$month == 5) echo 'Maj';
 if (
$month == 6) echo 'Czerwiec';
 if (
$month == 7) echo 'Lipiec';
 if (
$month == 8) echo 'Sierpień';
 if (
$month == 9) echo 'Wrzesień';
 if (
$month == 10) echo 'Październik';
 if (
$month == 11) echo 'Listopad';
 if (
$month == 12) echo 'Grudzień';

}

echo 
date('d')." ";
echo 
Data().", ".date('Y')."r.";

?>

Napisałem go na if'ach i mam pytanko, czy mogę go jakoś 'zminimalizować', np. Co mogę poprawić, jakiej funkcji użyć, słyszałem, że ktoś robił kiedyś coś podobnego używając tablic, ale nie jestem pewien, czy nie była to wtedy sprawa JS.

Z góry dzięki, Łukasz.


RE: Skrypt - Data z polskimi nazwami miesciąca. - Sajam - 30-07-2009

Kod PHP:
$miesiac = array('01'=>'Styczeń''02'=>'Luty' ... );
print 
$miesiac[date('m')]; 



RE: Skrypt - Data z polskimi nazwami miesciąca. - ukasz - 30-07-2009

Wielkie dzięki, czyli dobrze mówiłem o tych tablicach Smile

Odchudziłem plik o całe 176 bajtów.

Kod PHP:
<?php

function Data() {

$month = array(
 
'01' => 'Styczeń'
 
'02' => 'Luty',
 
'03' => 'Marzec',
 
'04' => 'Kwiecień',
 
'05' => 'Maj',
 
'06' => 'Czerwiec',
 
'07' => 'Lipiec',
 
'08' => 'Sierpień',
 
'09' => 'Wrzesień',
 
'10' => 'Październik',
 
'11' => 'Listopad',
 
'12' => 'Grudzień');

return 
$month[date('m')];

}

print 
date('d ');
print 
Data();
print 
date(' Y')."r."

?>



RE: Skrypt - Data z polskimi nazwami miesciąca. - KowR - 30-07-2009

Czy z funkcji nie powinieneś dawać return przypadkiem, a nie echo? Wink


RE: Skrypt - Data z polskimi nazwami miesciąca. - ukasz - 30-07-2009

Powinienem Smile

To całe 2 bajty pamięci więcej.. ;/


RE: Skrypt - Data z polskimi nazwami miesciąca. - Jupiter - 30-07-2009

Można to zrobić i bez tablic
Kod:
setlocale(LC_ALL, 'polish'); //dla Windows
setlocale(LC_ALL, 'pl_PL'); //Dla Linuxa
echo strftime('%B');
Poczytaj o formatowaniu dat funkcją strftime na http://us2.php.net/manual/en/function.strftime.php


RE: Skrypt - Data z polskimi nazwami miesciąca. - Poju - 31-07-2009

Nie musisz przypisywać indeków każdemu miesiącowi. Tablice zrobią to za Ciebie.
Kod:
<?php
    $miesiac = array('Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj', 'Czerwiec', 'Lipiec', 'Sierpień', 'Wrzesień', 'Październik', 'Listopad', 'Grudzień');
      echo $miesiac[date('n') - 1 ];
?>



RE: Skrypt - Data z polskimi nazwami miesciąca. - kam7 - 05-08-2009

pamiętaj że funkcja print jest nieco wolniejsza od funkcji echo