Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]return true, return false...
michat34
post 30.10.2012, 22:59:50
Post #1





Grupa: Zarejestrowani
Postów: 200
Pomógł: 1
Dołączył: 4.08.2012

Ostrzeżenie: (10%)
X----


witam to sa calkowite podstawy ale gdzies jak sie uczylem tych podstaw to mi to gdzies uciekło, wiec pytam...

czy return false zatrzymuje dzialanie skryptu jak wywolam go w funkcji. dajmy ze
  1. function podaj_liczba_wieksza_niz_piec ($liczba)
  2. {
  3. if ($liczba < 5) return false;
  4. }
  5.  
  6. echo 'To wykona sie tylko jak podasz liczbe wieksza niz 5';


jak dam $liczba = 7 pokaze mi sie tekst, ale czy jak dam 3 i funkcja zwroci false to to jakos zatrzyma skrypt? jaki jest wgl sens stosowania booleanow?

mozna je stosowac w instrukcjach warunkowych?

  1. if (podaj_liczbe_wieksza_niz_piec (7))
  2. {
  3. echo 'To sie wykona jezeli podasz liczbe > 5';
  4. }


to jest dobre wykorzystanie?

Ten post edytował michat34 30.10.2012, 23:07:02
Go to the top of the page
+Quote Post
b4rt3kk
post 30.10.2012, 23:09:06
Post #2





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Nie ważne jaką wartość przekazujesz poprzez return, jego wywołanie natychmiast kończy dalsze wykonywanie funkcji, także mniejsza czy to będzie true, false czy 'ala ma kota'.

Cóż wykorzystanie, taki przykład:

  1. // funkcja ma za zadanie podzielić vali1 przez val2
  2. function dzielenie($val1, $val2) {
  3. if ($val2 === '0') return false; // jeśli druga liczba jest zerem, to nie można podzielić więc nie ma sensu dalsze wykonywanie funkcji
  4. if (!is_int($val1) OR !is_int($val2)) return false; // jeśli wartosci nie sa liczbowe też dalsze wykonywanie działań jest bezcelowe
  5. return $val1/$val2; // zwrócenie wyniku
  6. }


Ten post edytował b4rt3kk 30.10.2012, 23:16:34


--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
Go to the top of the page
+Quote Post
michat34
post 30.10.2012, 23:15:13
Post #3





Grupa: Zarejestrowani
Postów: 200
Pomógł: 1
Dołączył: 4.08.2012

Ostrzeżenie: (10%)
X----


to wiem, tylko czy mozna to wykorzsytac w ifach?

no dajmy na to pisze obiektowy system autoryzacji i kazda metoda sprawdza mi opowiednio poprawnosc loginu, hasla i emaila. i jezeli cos sie nie powiedzie to zwraca false. inaczej nic nei zwraca (czyli zwraca true?)

czyli mozna dac takie cos? :
  1. if (($user->check_login()) && ($user->check_pass()) && ($user->check_email()))
  2. {
  3. // dodaj nowego uzytkownika do bazy
  4. }


bo to bedzie jakby if (true and true and true)... ?
i jezeli sie okaze ze ktoras metoda zwroci false to if sie nie wykona? dobrze to rozumiem?
Go to the top of the page
+Quote Post
b4rt3kk
post 30.10.2012, 23:17:58
Post #4





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Cytat(michat34 @ 30.10.2012, 23:15:13 ) *
to wiem, tylko czy mozna to wykorzsytac w ifach?

no dajmy na to pisze obiektowy system autoryzacji i kazda metoda sprawdza mi opowiednio poprawnosc loginu, hasla i emaila. i jezeli cos sie nie powiedzie to zwraca false. inaczej nic nei zwraca (czyli zwraca true?)

czyli mozna dac takie cos? :
  1. if (($user->check_login()) && ($user->check_pass()) && ($user->check_email()))
  2. {
  3. // dodaj nowego uzytkownika do bazy
  4. }


bo to bedzie jakby if (true and true and true)... ?
i jezeli sie okaze ze ktoras metoda zwroci false to if sie nie wykona? dobrze to rozumiem?


Tak dobrze rozumiesz, if się wtedy wykona jeśli wszystkie funkcje zwrócą true.


--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
Go to the top of the page
+Quote Post
michat34
post 30.10.2012, 23:21:14
Post #5





Grupa: Zarejestrowani
Postów: 200
Pomógł: 1
Dołączył: 4.08.2012

Ostrzeżenie: (10%)
X----


bardzo dziekuje wink.gif mozna zamknac
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 6.05.2025 - 05:31