Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Funkcje, return FALSE
Forum PHP.pl > Forum > PHP
Jawor
Witam.

Mam pytanie ktora definicja funkcji jest poprawna/lepsza/szybsza.
Jezeli pod kazdym wzgledem (oprocz ilosci kodu) jest to to samo napiszcie ktory sposob Wy wolicie.

  1. <?php
  2.  
  3. function nazwa($ile)
  4. {
  5.  
  6. if ($ile == '1')
  7. {
  8. // kilka instrukcji
  9. return TRUE;
  10. }
  11. else
  12. {
  13. return FALSE;
  14. }
  15.  
  16. }
  17.  
  18. ?>


  1. <?php
  2.  
  3. function nazwa($ile)
  4. {
  5.  
  6. if ($ile != '1') { return FALSE; }
  7.  
  8. // kilka instrukcji
  9. return TRUE;
  10.  
  11. }
  12.  
  13. ?>



Pozdrawiam
J.
Grzyw
Mogę się mylić, ale są one równorzędne. Warunki "równości" i "różności" wymagają od parsera identycznej analizy. A bloki instrukcji w obydwóch przypadkach są już identyczne.
Cotter
Podobnie jak przedmówcy wydaje mi się że są równoważne pod względem wydajnościowym, ale głowy nie dam.

Jeżeli chodzi o preferowany przeze mnie sposób to jest to zdecydowanie rozwiązanie drugie. Dlaczego? Ponieważ kod jest w mniejszej liczbie nawiasów oraz sprawdzanie w ten sposób pewnych warunków koniecznych wydaje mi się po prostu bardziej czytelne. Dzieli to w pewien sposób zadania funkcji na obsługiwane w pierwszej kolejności sytuacje wyjątkowe i sytuację normalną obsługiwaną kiedy żaden wyjątek nie zajdzie.
.radex
Osobiście preferuję drugi sposob. Kiedy pod if/for/while masz tylko jedną linijkę kodu, nie musisz dawać klamer (dla czytelności tylko tabulator). W kwestii kodu nie ma to znaczenia, choć w drugim jest raczej bardzo mała różnica (taka, że na pewno jej nie zauważysz).
Jawor
Ok. Dzieki wielkie za wasze opinie smile.gif
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.