PHP: Variablen zu Boolean casten/convertieren
PHP ist eine dynamisch getypte Sprache. Der Wert einer Variable kann vom String zum Integer oder Float werden. Manchen Programmieren gefällt dies gar nicht, anderen umso mehr. Doch was viele nicht genau wissen ist, wie in PHP die einzelnen Typen zu boolean castet (convertiert).
Man findet die Antworten zwar in der PHP Dokumentation, doch damit sich das keiner antun muss dort extra zu suchen, nachfolgend ein kleines Script dass uns die Antworten liefert.
Das Script findet sich hier:
http://juliusbeckmann.de/static/scripts/php-casting-to-boolean.phps
Die Ausgabe des Scripts sieht so aus:
Converting (casting) PHP Variables to boolean
- Booleans -
false - (bool)false
false - (bool)null
true - (bool)true
- Integer -
false - (bool)0
true - (bool)1
true - (bool)-1
- Strings -
false - (bool)''
false - (bool)'0'
true - (bool)'1'
true - (bool)'-1'
true - (bool)'a'
true - (bool)"a"
true - (bool)"\n"
true - (bool)"\0"
- Arrays -
false - (bool)array()
true - (bool)array('')
true - (bool)array('0')
true - (bool)array('a')
true - (bool)array(array())
- Objects -
true - (bool)$nothing
true - (bool)$nothing
Es lässt sich leicht erkennen dass nur
"false", "null", die Zahl 0, der leere String, der String mit der '0' drin und komplett leere Arrays
zu false casten.
Dieses Wissen lässt sich geschickt in Programmen nutzen wenn man eine Funktion schreibt und deren Rückgabewert, zB ein array, schnell prüfen möchte. Dazu kann man mit dem automatischen casten sich auch noch einiges an Tipparbeit sparen.