Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: !== false
Forum PHP.pl > Forum > Przedszkole
glass
cześć mam pytanko, nie umie do końca zrozumieć linijki poniżej dla jasności powiem co wiem, tak więc oczywiście jest to wyjęte z kontekstu jednak nie w tym rzecz, chodzi o końcówkę '!== false' doszedłem do wniosku, że to po prostu zamienia sie w prawdę czy tak?
ale jeśli to dlaczego po prostu nie zrobić true, myślę że działanie się zgadza ale coś pochrzaniłem .. ;pp dzięki za odpowiedź

  1. <?php
  2. if(($id = czyIstnieje($_POST['login'], $_POST['haslo'])) !== false)
  3. ?>
graveozz
Zapis !== oznacza: nieidentyczne.
W wolnym tłumaczeniu lewa strona nie jest równa prawej lub jest innego typu.
ayeo
Manual
mike
Warunek logiczny wewnątrz instrukcji if sprawdza po prostu czy wartość zmiennej $id jest różna od false.
Można byłby zapisać to wszystko tak:
  1. <?php
  2. $id = czyIstnieje($_POST['login'], $_POST['haslo']);
  3. if($id !== false) {
  4. // ...
  5. ?>

To co podałeś to po prostu, inny zapis. Trochę skrócony.
nospor
Cytat
że to po prostu zamienia sie w prawdę czy tak?
Nie, to się zamienia w "różne od false". Patrzac na kontekst to funckcja zwraca ci albo false, albo id (liczbe). !== false oznaczac bedzie ze zwrocila liczba.

Mozesz dac tak ==true co w kontekscie liczb i false da ci taki sam wynik co !== false. Aczkolwiek uwazaj przy takich zabawach smile.gif
== to nie to samo co === - patrz dokumentacja w manualu
glass
czyli jest jak jest nie martw się zostanę przy operacji z !==false, a manual odwiedzę później dziękuję za odpowiedzi pozdrawiam!
Mlodycompany
=== true to to samo co !== false
nospor
no wlasnie ze nie.
chociazby w tym przykladzie: funkcja zwraca albo false albo inta. Jak dasz === true to ten warunek nigdy nie bedzie spelniony
tak wiec panie @mlody w zimnej wodzie "company" (winksmiley.jpg) uzywaj operatorów w zaleznosci od kontekstu
Mlodycompany
haha. no ale na zdrowy tok myslenie przeciwienstwo false jest true, a znak !== oznacza ze nie sa takiego samego typu a jeszcze z false to zwraca ze bycie innego typu jest fałszem czyli znak === tzn bycie takiego samego typu z true wg mnie jest prawidłowy. nie wiem jak sie to waszym ukochanym manualu kształtuje bo tam nie zagladam ale w moim automacie wyglada to tak! biggrin.gif
nospor
Podalem ci przyklad, ze twoj "automat" jest niedopracowany, poco wiec sie sprzeczasz?

5 === true da ci false
5 !== false da ci true
widzisz subtelną roznice? Nadal twierdzisz ze "=== true to to samo co !== false" ?

Bylbys blizej prawdy jakbys uzyl do porownania ==true i != false

i jeszcze jedno:
Cytat
nie wiem jak sie to waszym ukochanym manualu kształtuje bo tam nie zagladam
nie osłabiaj... wyjezdzasz z teoriami, ktore wymyslasz na poczekaniu bez zadnej wiedzy teoretycznej i praktycznej, piszesz ze nie zagladasz do fachowej literatury i jeszcze sie klócisz. Nie daj boze jakis poczatkujacy skorzysta z twoich rad...
Mlodycompany
ja nie mowie zeby inni korzystali z moich rad na temat korzystania z manula. ja nie korzystam i to moja sprawa a czy inni korzystaja czy nie to mi to za przeproszeniem zwisa takze bez obrazy
nospor
Chyba nie zrozumiales o jakich radach mowilem.
Nie mialem na mysli korzystania z manuala. Miałem na mysli twoje stwierdzenie ze !== false jest jednoznaczne z === true. I o takie rady mi chodziło. Fakt, źle to nazwałem smile.gif

Ale skoro juz wspominasz manuala to moze jednak zacznij z niego korzystac bo wymyslanie wlasnych błędnych teorii na potrzeby tak prostych rzeczy, to chybya nie tędy droga.
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.