Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Warunek, Zmienna jest równa 0
mimol
post
Post #1





Grupa: Zarejestrowani
Postów: 247
Pomógł: 5
Dołączył: 10.12.2007

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


Napisałem taki sobie oto warunek
  1. $amount = 0;
  2.  
  3. if ($amount=='+'){
  4. echo '+';
  5. }elseif ($amount =='-'){
  6. echo '-';
  7. }else{
  8. echo $amount;
  9. }

Z niewiadomych dla mnie przyczyn zamiast wyświetlić 0 wyświetla + (przecież 0 =/= +)
Jeśli dam === zamiast ==, działa OK
Czy może mi ktoś wyjaśnić dlaczego tak to działa? przecież 0/Null z pewnością nie powinien pasować do 1szego warunku
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mimol
post
Post #2





Grupa: Zarejestrowani
Postów: 247
Pomógł: 5
Dołączył: 10.12.2007

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


Nie rozumiem dlaczego
  1. var_dump("61529519452809720693702583126814" == "61529519452809720000000000000000");'
zwraca prawdę (nawet jeśli jest rzutowane na float , to to są różne wartośći.
Jak również dlaczego poniższy przykład zwraca prawdę
  1. var_dump(61529519452809720693702583126814 === 61529519452809720000000000000000);

Czy PHP nie radzi sobie z dużymi liczbami?

Ten post edytował mimol 16.02.2013, 19:31:15
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: 10.10.2025 - 17:56