SUCKUP.de

PHP | TRUE || FALSE

PHP-Logo

PHP-Logo

This blog post has been published on 2014-05-24 and may be out of date.
if (-1 == true) {
  echo "aha ...";
}
// output: aha ...

$tmpArray = array(0, 'foo2');
if (in_array("foo", $tmpArray)) {
  echo "aha v2 ...";
}
// output: aha v2 ...

$tmpArray = array(0, 'foo2');
if (in_array("foo", $tmpArray, true)) {
  echo "aha v3 ...";
}
// output:

Das Beispiel mit in Array hab ich auf Twitter gesehen und hat mich im ersten Momentan doch ein wenig verwirrt.

Wenn man den dritten Parameter ($strict = null) von der Funktion “in_array” nicht auf “true” setzt, werden die Werte mit dem “==” Operator verglichen und daher ist ein nicht definierter String == null == 0 -> daher wieder “true” ;)

Also, sollte man in den meisten Fällen $strict auf “true” setzten und somit einen Typenvergleich mit dem “===” Operator durchführen lassen.

<- Übersicht -> 

== true false 1 0 -1 “1” “0” “-1” null array() array(1) array(“php”) “php” “” NAN
true true false true false true true false true false false true true true false true
false false true false true false false true false true true false false false true false
1 true false true false false true false false false false false false false false false
0 false true false true false false true false true false false false true true false
-1 true false false false true false false true false false false false false false false
“1” true false true false false true false false false false false false false false false
“0” false true false true false false true false false false false false false false false
“-1” true false false false true false false true false false false false false false false
null false true false true false false false false true true false false false true false
array() false true false false false false false false true true false false false false false
array(1) true false false false false false false false false false true false false false false
array(“php”) true false false false false false false false false false false true false false false
“php” true false false true false false false false false false false false true false false
“” false true false true false false false false true false false false false true false
NAN true false false false false false false false false false false false false false false

source: http://habnab.it/php-table.html