משתנים בוליאנים
הסוג הבוליאני הוא הסוג הפשוט ביותר. הוא מבטא ערך של אמת או שקר. הערך שלו יכול להיות TRUE או FALSE.
Note: הסוג הבוליאני הוצג לראשונה ב-PHP 4.
תחביר
על מנת להגדיר משתנה בוליאני, יש להשתמש באחת ממילות המפתח TRUE או FALSE, שתי מילות המפתח הן case-insensitive, כלומר, לא תלויות בגודל האות.
<?php
$foo = True; // assign the value TRUE to $foo
?>
בדרך כלל משתמשים באופרטור שמחזיר ערך boolean ומעבירים אותו למבנה בקרה.
<?php
// == is an operator which test
// equality and returns a boolean
if ($action == "show_version") {
echo "The version is 1.23";
}
// this is not necessary...
if ($show_separators == TRUE) {
echo "<hr>\n";
}
// ...because you can simply type
if ($show_separators) {
echo "<hr>\n";
}
?>
המרה למשתנה בוליאני
כדי להמיר ערך של משתנה במפורש לboolean, יש להשתמש בהמרת (bool) או בהמרת (boolean). אף על פי כן, ברוב המקרים אין צורך להמיר את המשתנה ידנית, משום שהערך יומר אוטומטית אם אופרטור, פונקציה או מבנה בקרה דורשים ארגומנט boolean.
ראה גם מעבר בין טיפוסים.
כשממירים ערך לboolean, הערכים הבאים נחשבים ל-FALSE:
- הערך הבוליאניבעצמו FALSE
- מספר השלם 0 (אפס)
- המספר בעל נקודה צפה 0.0 (אפס)
- מחרוזת ריקה והמחרוזת "0"
- מערך ללא אלמנטים
- אובייקט ללא משתנים חברים
- הסוג המיוחד NULL (כולל משתנים שלא הוכרזו)
-1 נחשב ל-TRUE, כמו כל מספר (שלילי או חיובי) שהוא לא אפס.
<?php
echo gettype((bool) ""); // bool(false)
echo gettype((bool) 1); // bool(true)
echo gettype((bool) -2); // bool(true)
echo gettype((bool) "foo"); // bool(true)
echo gettype((bool) 2.3e5); // bool(true)
echo gettype((bool) array(12)); // bool(true)
echo gettype((bool) array()); // bool(false)
?>