Mục lục bài viết

Trong bài này, chúng ta sẽ tìm hiểu kỹ về kiểu dữ liệu boolean trong PHP. Để học tốt bài này, các bạn cần đọc lại bài Cài đặt môi trường lập trình Web PHP với XAMPP để biết cách chạy ứng dụng web PHP với XAMPP.

1. Kiểu dữ liệu boolean trong PHP

Kiểu dữ liệu boolean còn gọi là kiểu luận lý (logic) hoặc kiểu bool. Kiểu dữ liệu boolean chỉ lưu trữ 2 giá trị: TRUE hoặc FALSE. Trong PHP, giá trị true và false không phân biệt chữ hoa, chữ thường. Chúng ta có thể viết true/TRUE/True hoặc false/FALSE/False đều được.

Giá trị kiểu NULL cũng được coi là FALSE trong boolean. Ngoài NULL, 0 cũng được coi là FALSE trong boolean. Nếu một chuỗi (string) rỗng (empty) thì nó cũng được coi là FALSE trong boolean.

<?php
$x = TRUE;
$y = FALSE;
$a = NULL;
$b = 0;
$c = "";
var_dump($x);
var_dump($y);
var_dump($a);
var_dump((bool)$b);
var_dump((bool)$c);
?>
Kết quả
bool(true) bool(false) NULL bool(false) bool(false)

Một số giá trị trong PHP tương đương với kiểu dữ liệu boolean như sau:

    • Số nguyên khác 0 chuyển thành true, số 0 chuyển thành false.
    • Số thực bằng 0.0 chuyển thành false, còn lại là true.
    • Chuỗi (string) khác rỗng (empty) chuyển thành true, chuỗi rỗng chuyển thành false.
    • Giá trị NULL tương đương với false.
    • Mảng (array) không có phần tử nào tương đương với false.
<?php
// số nguyên khác 0
$x = 1;
var_dump((bool)$x);//bool(true)
// số 0
$x = 0;
var_dump((bool)$x);//bool(false)
// số thực khác 0.0
$x = 1.2;
var_dump((bool)$x);//bool(true)
// số thực 0.0
$x = 0.0;
var_dump((bool)$x);//bool(false)
// chuỗi (string) khác rỗng
$x = '12a';
var_dump((bool)$x);//bool(true)
// chuỗi (string) rỗng
$x = '';//hoặc ""
var_dump((bool)$x);//bool(false)
// NUll tương đương false
$x = NULL;
var_dump((bool)$x);//bool(false)
// mảng (array) rỗng
$x = [];
var_dump((bool)$x);//bool(false)
?>

2. Một số hàm trả về kiểu boolean trong PHP

Hàm is_bool() trong PHP giúp kiểm tra giá trị của một biến có phải kiểu bool/boolean hay không. Để chuyển đổi các kiểu dữ liệu khác về bool/boolean, chúng ta có thể sử dụng các hàm ép kiểu (type casting) như (bool), (boolean) hoặc boolval().

<?php
$x = true;
echo 'Is $x bool? ';
var_dump(is_bool($x));
$y = 'a';
echo '<br>Is $y bool? ';
var_dump(is_bool($y));
echo '<br>Is $y existing? ';
var_dump(isset($y));
?>
Kết quả
Is $x bool? bool(true)
Is $y bool? bool(false)
Is $y existing? bool(true)

Các hàm kiểm tra kiểu dữ liệu is_int(), is_double(), is_float() , is_string() hoặc hàm kiểm tra sự tồn tại của biến isset() cũng trả về kiểu boolean.

Tác giả

HV Lee

500+ bài viết về lập trình, phần cứng, mạng máy tính và công nghệ. Chia sẻ kiến thức từ những gì đã học, đã dạy và đã trải nghiệm — để người học CNTT hiểu sâu hơn và làm được nhiều hơn.

Gợi ý tiếp theo

Các loại toán tử (operator) trong PHP

Học tiếp