PHP Portal » PHP Handbuch » Booleans

Werbung

Booleans


Dies ist der einfachste Typ. Ein boolean Ausdruck ist ein Wahrheitswert der entweder TRUE (wahr) oder FALSE (falsch) sein kann.

Hinweis: Der boolean Typ wurde in PHP 4 eingeführt.

Syntax

Ein boolean Wert wird über die Schlüsselworte TRUE und FALSE spezifiziert, Groß- und Kleinschreibung ist dabei nicht von Bedeutung.

PHP Code
1
$foo = True; // weist $foo den Wert TRUE zu

Normalerweise wird ein boolean von einem Operator zurückgegeben und an eine Kontrollstruktur weitergegeben.

PHP Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// == ist ein Operator der auf Gleichheit prüft // und ein boolean Ergebnis zurückgibt if ($action == "show_version") { echo "Die Version ist 1.23"; } // die Angabe von '== TRUE' ist hier nicht nötig if ($show_separators == TRUE) { echo "<hr>\n"; } // ... stattdessen funktioniert auch einfach das folgende: if ($show_separators) { echo "<hr>\n"; }

Converting to boolean

To explicitly convert a value to boolean, use the (bool) or (boolean) casts. However, in most cases the cast is unncecessary, since a value will be automatically converted if an operator, function or control structure requires a boolean argument.

Siehe auch Typumwandlungen.

Bei der Konvertierung zum Typ boolean gelten die folgenden Werte als FALSE:

  • boolean FALSE selbst
  • integer 0 (zero)
  • float 0.0 (zero)
  • Der leere string, und der string "0"
  • Ein array ohne Elemente
  • Ein object ohne Eigenschaftsvariablen (nur PHP 4)
  • Der spezielle Typ NULL (inklusive nicht gesetzter Variablen)
  • SimpleXML Objekte die aus leeren Tags erzeugt wurden.

Jeder andere Wert wird als TRUE angenommen (inklusive jeglicher resource Werte).

Warnung

-1 gilt als TRUE wie jeder andere Integerwert ungleich 0 (egal ob positiv oder negativ)!

PHP Code
1
2
3
4
5
6
7
8
var_dump((bool) ""); // bool(false) var_dump((bool) 1); // bool(true) var_dump((bool) -2); // bool(true) var_dump((bool) "foo"); // bool(true) var_dump((bool) 2.3e5); // bool(true) var_dump((bool) array(12)); // bool(true) var_dump((bool) array()); // bool(false) var_dump((bool) "false"); // bool(true)