Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: 'string' == 0 => true?
Forum PHP.pl > Forum > Przedszkole
DEXTER_c
Czuję, że będzie to szczytowo głupie pytanie, ale nie mogę pojąć, dlaczego kod:

  1. <?php
  2. if('string' == 0) {
  3.  echo 'dziwne!';
  4. }
  5. ?>


Wyświetli komunikat, skoro przecież 'string' nie może się równać zero! blinksmiley.gif

Wiem, że php traktuje zero jako false, ale:

  1. <?php
  2. if('string' == false) {
  3.  echo 'dziwne!';
  4. }
  5. ?>


Nie wyświetli komunikatu blinksmiley.gif

Używam php 5.2.0, Apache 2, Linux 2.6.x
dr_bonzo
'===' i wszystko jasne

przy
'string' == 0
chyba stringa zamienia na integera, czyli zero smile.gif

no tak:
  1. <pre><?php
  2.  
  3. $string = 'costam';
  4. $string_as_int = intval( $string );
  5. $string_as_bool = (bool)( $string );
  6.  
  7. var_dump( $string );
  8. var_dump( $string_as_int );
  9. var_dump( $string_as_bool );
  10. ?></pre>
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.