Đi qua được 2 bài về hằng biến mình đã nói sơ sơ qua về một số kiểu dữ liệu căn bản như kiểu số, kiểu chữ rồi. Thế nhưng trong PHP thì còn rất nhiều kiểu dữ liệu nữa, hôm nay mình và các bạn cùng tìm hiểu nhé!

Trước tiên vào học các kiểu dữ liệu thì mình sẽ lưu ý cho các bạn như sau: Trong PHP thì khi khai báo biến hoặc hằng chúng ta không cần phải khai báo kiểu dữ liệu cho biến hay hằng đó. Đây là điểm nhanh gọn hơn các ngôn ngữ lập trình khác!
Ví dụ bạn khai báo biến $so = 1; thì nó sẽ tự nhận dạng biến $so có kiểu dữ liệu là Int (Số nguyên). Hay là các kiểu dữ liệu khác bạn khai báo cũng như vậy, PHP sẽ tự nhận dạng nó và xử lý nó. Rất tuyệt vời đúng không?

1. Kiểu dữ liệu "INT " (kiểu số)

Khái niệm kiểu dữ liệu INT
Kiểu dữ liệu INT viết tắt của Integer (số nguyên). Có thể viết ở nhiều dạng khác nhau như: số thập phân, số nguyên âm, số thực. Trong xuyên xuốt phần này mình sẽ gọi tắt là INT nhé!
Các bạn xem ví dụ về các dạng trong kiểu dữ liệu INT này,
<?php 
$sothapphan = 456; //Đây là kiểu dữ liệu INT dạng thập phân
$songuyenam = -456; // Đây là kiểu dữ liệu INT dạng  nguyên âm
$sothuc = 4.56; // Đây là kiểu INT dạng số thực
echo $sothapphan."<br />".$songuyenam."<br />".$sothuc; // Hiện thị các kết quả ra màn hình
?> 
Kết quả hiện thị:
456
-456
4.56
Ép kiểu dữ liệu sang INT
Trong PHP còn hỗ trợ cho các bạn ép kiểu dữ liệu khác thành kiểu dữ liệu INT như sau:
Cú pháp ép kiểu: (int)<biến_cần_ép>;
<?php 
$sobay = '7'; // Đây là biến chữ  (string)  có giá trị là '7'
var_dump((int)$sobay); // Ép kiểu chữ (string) trong biến $sobay thành kiểu dữ liệu INT (kiểu số) và hiển thị nó ra màn hình
?> 

Kết quả hiển thị
int(7)
Kiểm tra có phải là kiểu dữ liệu INT hay không
Ngoài cách ép kiểu dữ liệu khác sang dạng INT thì chúng ta cũng có thể kiếm tra xem có phải là kiểu INT hay không bằng cú pháp sau: is_integer(<biến_cần_kiểm _tra>); hoặc is_int(<biến_cần_kiểm _tra>);
<?php 
$biencankiemtra = "7"; // Biến cần kiểm tra 
$biencankiemtra2  = 7; // Biến cần kiểm tra
echo is_integer($biencankiemtra);// Kiểm tra biến $biencankiemtra có phải là số hay không
echo "<br />";// Suống dòng bằng thẻ <br / > của html
echo is_integer($biencankiemtra2);// Kiểm tra biến $biencankiemtra2 có phải là số hay không
?> 
Kết quả hiện thị

1
Chú ý: 
  1. Kết quả hiện thị bằng 0 nghĩa là sai (false)
  2. Kết quả hiện thị bằng 1 nghĩa là đúng(true)
Cuối cùng là khái niệm kiểu số thực "FLOAT", "DOUBLE"
Các bạn hiểu số thực là số có dạng 7.77, 77.7, 777.7 ...v.v (là số có phần dư ở sau dấu phẩy).
Cú pháp ép kiểu dữ liệu sang INT sang FLOAT hoặc DOUBLE
  1. Cú pháp ép kiểu: (float)<biến_cần_ép>; hoặc (double)<biến_cần_ép>;
  2. Cú pháp kiểm tra: is_float(<biến_cần_ép>); hoặc is_double(<biến_cần_ép>);
Cũng như trên kiểu INT thôi nên mình không đưa ra ví dụ nữa nhé!

2. Kiểu ký tự "STRING" (Kiểu chữ)

Khái niệm về kiểu String
Kiểu dữ liệu Stringkiểu dạng chuỗi các ký tự, được chứa bên trong dấu ngoặc đơn hoặc ngoặc kép, các bạn nhớ nắm rõ cái khái niệm chữ trong ngoặc này nhé!Các bạn xem ví dụ về các dạng trong kiểu dữ liệu String này
<?php 
$string = "Đây là kiểu string"; //Biến string chứa kiểu dữ liệu string trong ngoặc kép 
echo $string; // Hiện thị ra màn hình
?> 
Kết quả hiển thị
Đây là kiểu string
Ép kiểu dữ liệu sang String
Trong PHP còn hỗ trợ cho các bạn ép kiểu dữ liệu khác thành kiểu dữ liệu String như sau:
Cú pháp ép kiểu: (string)<biến_cần_ép>;
<?php 
$ep_kieu_string = 777; // Đây là biến $ep_kieu_string có giá trị là kiểu INT và giá trị là 777
var_dump((string)$ep_kieu_string); //Ép kiểu INT ở biến $ep_kieu_string trên thành kiểu string và mang giá trị mới là  "777" và hiển thị nó ra
?> 
Kết quả hiển thị
string(3) "777"
Kiểm tra có phải là kiểu dữ liệu String hay không
Ngoài cách ép kiểu dữ liệu khác sang dạng String thì chúng ta cũng có thể kiếm tra xem có phải là kiểu String hay không bằng cú pháp sau: is_string(<biến_cần_kiểm _tra>);
<?php 
$kiem_tra_string = "777"; // Biến $kiem_tra_string mang giá trị "777"
$kiem_tra_string2 = 777; // Biến $kiem_tra_string2 mang giá trị 777
echo is_string($kiem_tra_string);// Kiểm tra biến $kiem_tra_string và hiển thị nó ra màn hình
echo is_string($kiem_tra_string2);// Kiểm tra biến $kiem_tra_string và hiển thị nó ra màn hình
?> 
Kết quả hiển thị
1
0
Chú ý: 
  1. Kết quả hiện thị bằng 0 nghĩa là sai (false)
  2. Kết quả hiện thị bằng 1 nghĩa là đúng(true)

3. Kiểu dữ liệu "BOOLEAN"

Khái niệm về kiểu dữ liệu "BOOLEAN"
Kiểu dữ liệu Boolean là kiểu chỉ mang 2 giá trị đó là true hoặc false. Các bạn xem ví dụ dưới nhé:
<?php 
$dung = true; // Biến $dung mang giá trị là true
$sai = false; // Biến $sai mang gia tri la false
echo $dung. "<br />". $sai; // Hiển thị  giá trị của 2 biến $dung và $sai.
?> 
Kết quả hiển thị
1
0
Chú ý: 
  1. Kết quả hiện thị bằng 0 nghĩa là false
  2. Kết quả hiện thị bằng 1 nghĩa là true
Ép kiểu dữ liệu sang Boolean 
Trong PHP còn hỗ trợ cho các bạn ép kiểu dữ liệu khác thành kiểu dữ liệu Boolean như sau:
Cú pháp ép kiểu: (boolean)<biến_cần_ép>; hoặc (bool)<biến_cần_ép>;
<?php 
$int= 1; // biến $int là kiểu int mang giá trị 1
$int2 = 0; // biến $int là kiểu int mang giá trị 0
var_dump((boolean)$int); // ép kiểu của biến $int sang boolean
echo "<br />"; // Suống dòng với <br /> của html
var_dump((boolean)$int2); // ép kiểu của biến $int2 sang boolean
?> 
Kết quả hiển thị
bool(true) 
bool(false)
Chú ý: 
Các ký tự trống, số 0 khi ép kiểu sang boolean thì là FALSE, còn lại các giá trị không phải trống (null) hoặc không phải số 0 thì là TRUE 
Kiểm tra kiểu dữ liệu Boolean 
Để kiểm tra kiểu dữ liệu Boolean ta dùng cú pháp sau:
Cú pháp kiểm tra kiểu Boolean : is_bool(<biến_cần_ép>); 
<?php 
$kiem_tra_bool = true;// Biến $kiem_tra_bool mang giá trị true
$kiem_tra_bool2 = "HighTech4"; // Biến $kiem_tra_bool2 mang giá trị "HighTech4"
echo is_bool($kiem_tra_bool ). "<br />".is_bool($kiem_tra_bool2);// Hiển thị kết quả kiểm tra 
?> 
Kết quả hiển thị
1
0
Chú ý: 
  1. Kết quả hiện thị bằng 0 nghĩa là không phải
  2. Kết quả hiện thị bằng 1 nghĩa là phải
4. Tổng kết kiến thức
Trong bài hôm nay mình đã đưa ra được 3 kiểu dữ liệu căn bản, cách ép kiểu, kiểu tra kiểu dữ liệu của ngôn ngữ lập trình PHP. Tuy nhiên đây mới chỉ là 3 kiểu dữ liệu căn bản mà thôi, thật ra thì còn kiểu dữ liệu mảng (ARRAY) và kiểu dữ liệu đối tượng nâng cao (object) mình chưa nói đến cho các bạn vì các bạn là người mới nên 2 kiểu dữ liệu này mình để sau.