=== 0 dans php

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : === 0 dans php

Re: === 0 dans php

par AB » 12 mars 2011, 04:50

Oui et par ailleurs dans l'exemple qui nous intéresse strpos retournera soit une valeur numérique si l'occurrence est trouvée et sinon false mais jamais null.

Re: === 0 dans php

par popy » 11 mars 2011, 11:05

La valeur numérique de null est 0, comme celle de false, mais null !== 0 / null !== false

Re: === 0 dans php

par moogli » 10 mars 2011, 17:53

il me semble que null est aussi considéré comme 0 / false ?

@+

Re: === 0 dans php

par AB » 10 mars 2011, 17:43

Quand on fait " if( ) " avec une comparaison "==", si le résultat à l'intérieur du if vaut 0 alors if retourne false, car de manière large, 0 est assimilé à false.

Donc particulièrement dans le code if (strpos($key, 'alain') === 0) on cherche à savoir si "alain" est en début de chaine, c'est à dire si l'expression est à la position 0 puisqu'on commence à compter à 0. Quand la condition est remplie le retour est donc 0 et pour éviter de le confondre avec false on utilise la comparaison stricte "===", sinon on pourrait pas faire de différence entre l'expression non trouvée et l'expression trouvée en position 0.

Re: === 0 dans php

par BaLiSTiK » 10 mars 2011, 11:43

Le == vérifie si deux valeurs sont identiques, mais avec un 3ième =, ça vérifie si le type des deux valeurs est bien aussi identique.

Regarde :
$a = '0';
$b = 0;
if ( $a == $b ){
	echo 'meme valeur';
}
if( $a === $b) {
	echo '<br>Meme valeur et meme type';
} else {
	echo '<br>Meme valeur mais pas meme type -> ' . gettype($a) . ' - ' . gettype($b) ;
} 
Le premier affichera bien "meme valeur".
Mais le second test, indiquera que le premier est de type string, et le deuxieme de type integer

=== 0 dans php

par light86 » 10 mars 2011, 11:37

bonjour j'ai trouvé ce code if (strpos($key, 'alain') === 0)

j'ai pas compris 3 fois =
merci