ภาษาพีเอชพี/ประเภทของตัวแปร/บูลีน
หน้าตา
Boolean
[แก้ไข | แก้ไขต้นฉบับ]เป็นชนิดที่เรียบง่ายที่สุด โดย boolean จะบอกค่าความจริง จะเป็นได้แค่อย่างใดอย่างหนึ่งคือ TRUE หรือ FALSE
- ชนิด boolean มีการเริ่มใช้ตอน PHP4
รูปแบบคำสั่ง
[แก้ไข | แก้ไขต้นฉบับ]การจะกำหนดค่า boolean นั้นให้ใช้คำว่า TRUE หรือ FALSE
<?php
$foo = True; // กำหนดค่า TRUE ให้กับ $foo
?>
มี operator บางตัวคืนค่า boolean และค่าที่ได้นั้นส่งต่อไปให้ control structure
<?php
// == เป็น operator(ตัวดำเนินการ) ที่ใช้ทดสอบ
// ความเท่ากันและคืนค่าเป็น boolean
if ($action == "show_version") {
echo "The version is 1.23";
}
// การทำแบบนี้ไม่จำเป็น
if ($show_separators == TRUE) {
echo "<hr>\n";
}
// เพราะว่าสามารถใช้แบบนี้แทนได้
if ($show_separators) {
echo "<hr>\n";
}
?>
การแปลงค่าเป็น boolean
[แก้ไข | แก้ไขต้นฉบับ]การจะแปลงค่าให้เป็น boolean นั้นสามารถทำได้ โดยใช้ (bool) หรือ (boolean) แปลง ยังไงก็ตามส่วนมากแล้วการแปลงแบบนั้นไม่จำเป็น เนื่องจาก ค่า จะได้รับการแปลงโดยอัตโนมัติถ้าเกิดว่า operator, ฟังก์ชั่น หรือ โครงสร้างควบคุม(control structure) นั้นต้องใช้ค่า boolean เป็น อาร์กิวเมนท์(argument)
ดูเพิ่มเติมที่ Type Juggling
- เมื่อเกิดการแปลงเป็น boolean ตามข้างล่างค่าที่ได้จะเป็น FALSE
PHP จะมอง -1 เป็น TRUE เช่นเดียวกับ ตัวเลขอื่น ๆ ที่ไม่ใช่ 0 (ไม่ว่าจะเป็นค่าบวกหรือติดลบก็ตาม)
ตัวอย่างของการแปลง boolean ด้วย (bool) โดยให้มีการแสดงผลออกมาด้วย var_dump()
<?php
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)
?>
var_dump() จะแสดงชนิดของตัวแปรที่เป็น argument และแสดงค่าของตัวแปรนั้นด้วย