Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Funkcje, return FALSE
Jawor
post
Post #1





Grupa: Zarejestrowani
Postów: 73
Pomógł: 2
Dołączył: 1.10.2003

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


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.

Ten post edytował Jawor 23.01.2008, 21:49:29
Go to the top of the page
+Quote Post
Grzyw
post
Post #2





Grupa: Zarejestrowani
Postów: 561
Pomógł: 75
Dołączył: 19.08.2004
Skąd: Wrocław

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


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.
Go to the top of the page
+Quote Post
Cotter
post
Post #3





Grupa: Zarejestrowani
Postów: 57
Pomógł: 12
Dołączył: 6.01.2008
Skąd: Wrocław

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


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.
Go to the top of the page
+Quote Post
.radex
post
Post #4





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

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


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).

Ten post edytował radex_p 24.01.2008, 15:28:28
Go to the top of the page
+Quote Post
Jawor
post
Post #5





Grupa: Zarejestrowani
Postów: 73
Pomógł: 2
Dołączył: 1.10.2003

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


Ok. Dzieki wielkie za wasze opinie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

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: 23.08.2025 - 06:44