Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Operatory porównania.
Kużdo
post
Post #1





Grupa: Zarejestrowani
Postów: 181
Pomógł: 14
Dołączył: 4.06.2008

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


Witam,

Wiem, że może to być głupie pytanie, ale ciągle mnie dręczy, więc wolę się upewnić i zapytać. Czy można zapisać porównanie "jeśli większy od X i mniejszy od Y to" w jednym porównaniu zamiast w dwóch? Bo np. patrząc na skrypt w którym muszę sprawdzać za jednym razem wiele danych, czy się zgadzają to takich warunków byłoby kilkanaście... Szybko i łatwo można byłoby się pogubić w tak długim if'ie... Więc ciągle zastanawiam się czy można użyć zapisu np.
  1. if((5 < strlen($zmienna1) < 20) AND (5 < strlen($zmienna2) < 20) AND (5 < strlen($zmienna3) < 20) AND (5 < strlen($zmienna4) < 20))


No bo spójrzmy prawdzie w oczy. Który zapis jest ładniejszy?
  1. if((5 < strlen($zmienna1) < 20) AND (5 < strlen($zmienna2) < 20) AND (5 < strlen($zmienna3) < 20) AND (5 < strlen($zmienna4) < 20))
  2.  
  3. if(strlen($zmienna1) > 5 AND strlen($zmienna1) < 20 AND strlen($zmienna2) > 5 AND strlen($zmienna2) < 20 AND strlen($zmienna3) > 5 AND strlen($zmienna3) < 20 AND strlen($zmienna4) > 5 AND strlen($zmienna4) < 20)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
bogdan89
post
Post #2





Grupa: Zarejestrowani
Postów: 320
Pomógł: 36
Dołączył: 28.08.2006
Skąd: Wrocław

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


Cytat(kuzdo @ 13.03.2010, 22:06:39 ) *
Programiści PHP mogliby pomyśleć nad takim rozwiązaniem ^^ Ułatwia życie, a w niczym nie przeszkadza (IMG:style_emoticons/default/haha.gif)


Nie, to nie tak. Architektura systemów jest taka i już.
Gdzie byś nie zobaczył: Pascal, C, C++, Java ... I tak jest dobrze, że można składać instrukcje za pomocą AND i OR.

Żeby było ładniej to możesz rozdzielić te warunki na osobne instrukcje.
Sprawdzać wszystkie po kolei, a na końcu sprawdzić czy wystąpiły błędy i w razie czego przerwać działanie.
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: 15.10.2025 - 21:28