Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] warunek dla kolejnych wartości
Forum PHP.pl > Forum > PHP
M@X
Witam.
Oto fragment kodu gdzie jak jest wartość ==1 to wyświetla napis "rok" w innym wypadku napis "lat"
  1. <?php
  2. $Years.(($Years == 1)?' rok, ':' lat, '):'').
  3. ?>

W jaki sposób dopisać do tego jeszcze jedną możliwość dla wartości: 2 lub 3 lub 4 == "lata"
wrzasq
to juz jest przerost formy nad trescia. operator ?: jest tylko do pojedynczych warunkow. tutaj po prostu wgodniej uzyc zwyklych if/elseif/else'ow. ale jesli sie koniecznie uparles to mozesz to zrobic w ten sposob:

  1. <?php
  2. $Years = (($Years == 1) ? ' rok, ' : ($Years < 5 ? ' lata, ' : ' lat, '));
  3. ?>


ale moim zdaniem to niezbyt czytelny (i elegancki) zapis...
.radex
http://radex.i15.eu/wp/tworzenie-odmian-wyrazow-php/

generatePlFormOf(5, 'rok', 'lata', 'lat')
Spykaj
http://forum.php.pl/index.php?showtopic=96826

Tutaj masz też kilka rozwiązań tego problemu. Na pewno to co masz jest złe, sam widzisz, że musisz mieć trzy formy:
1 rok, 2 lata, 5 lat, 12 lat, 22 lata
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.