Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] problem z bardzo prostą funkcją
linx
post
Post #1





Grupa: Zarejestrowani
Postów: 100
Pomógł: 3
Dołączył: 25.06.2007

Ostrzeżenie: (0%)
-----


Witam,
mam problem ze stworzeniem bardzo prostej funkcji:

  1. <?php
  2. function miesiac_nazwa($tekst) {
  3.        $tekst = str_replace('1', STYCZEN, $tekst);
  4.        $tekst = str_replace('2', LUTY, $tekst);
  5.        $tekst = str_replace('3', MARZEC, $tekst);
  6.        $tekst = str_replace('4', KWIECIEN, $tekst);
  7.        $tekst = str_replace('5', MAJ, $tekst);
  8.        $tekst = str_replace('6', CZERWIEC, $tekst);
  9.        $tekst = str_replace('7', LIPIEC, $tekst);
  10.        $tekst = str_replace('8', SIERPIEN, $tekst);
  11.        $tekst = str_replace('9', WRZESIEN, $tekst);
  12.        $tekst = str_replace('10', PAZDZIERNIK, $tekst);
  13.        $tekst = str_replace('11', LISTOPAD, $tekst);
  14.        $tekst = str_replace('12', GRUDZIEN, $tekst);
  15.        return $tekst;
  16. }
  17. ?>


funkcja fajnie działa do momentu kiedy wartość są od 1-9, kiedy wartość są od 10-12 to zawsze wyświetla się styczeń.

Prosił bym o jakieś wskazówki.
Za pomoc z góry dziękuje.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
WojtasSP320
post
Post #2





Grupa: Zarejestrowani
Postów: 87
Pomógł: 13
Dołączył: 13.08.2008
Skąd: Chełmno

Ostrzeżenie: (0%)
-----


Jeśli na wejściu podajesz tylko nr miesiąca, to prościej zrobisz to instrukcją switch:

  1. <?php
  2. function nr2month($nr)
  3. {
  4. switch($nr)
  5. {
  6. case 1: {$text = 'STY'; break;}
  7. case 2: {$text = 'LUT'; break;}
  8. case 3: {$text = 'MAR'; break;}
  9. case 4: {$text = 'KWI'; break;}
  10. case 5: {$text = 'MAJ'; break;}
  11. case 6: {$text = 'CZE'; break;}
  12. case 7: {$text = 'LIP'; break;}
  13. case 8: {$text = 'SIE'; break;}
  14. case 9: {$text = 'WRZ'; break;}
  15. case 10: {$text = 'PAŹ'; break;}
  16. case 11: {$text = 'LIS'; break;}
  17. case 12: {$text = 'GRU'; break;}
  18. }
  19.  
  20. return $text;
  21. }
  22. ?>



Trochę lipa z tym str_replace, bo jak zinterpretuje 11 (jako Listopad, czy StyczeńStyczeń)? Jeśli sie mylę, to proszę mnie poprawić.

Ten post edytował WojtasSP320 5.10.2008, 12:32:09
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.12.2025 - 00:54