Trên hành trình học lập trình PHP căn bản, chúng ta đã tìm hiểu về biến và cách sử dụng chúng. Bài viết này tiếp tục khám phá thêm về các kiểu dữ liệu và mảng trong PHP.
1. Kiểu dữ liệu số
Kiểu số nguyên (INT)
Trong ví dụ đầu tiên, ta tạo hai biến: $a
là chuỗi và $b
là số. Khi ta cộng hai biến này, PHP sẽ tự động chuyển kiểu dữ liệu để phù hợp và kết quả sẽ được lưu vào biến $c
. Ta có thể sử dụng var_dump(is_int($c))
để kiểm tra kết quả.
Ví dụ 5: Khi chạy đoạn code này, kết quả trả về là 0.
Ví dụ 6: Để kiểm tra một biến có phải kiểu INT hay không, ta sử dụng các hàm is_int($bien)
hoặc is_integer($bien)
. Kết quả trả về là TRUE
nếu đúng và FALSE
nếu không phải kiểu INT.
2. Kiểu dữ liệu boolean
Kiểu boolean có hai giá trị là TRUE và FALSE. Lưu ý, TRUE và FALSE không phân biệt chữ hoa thường, tức là bạn có thể gõ thế nào cũng được miễn là đúng.
Ví dụ 7: Để ép kiểu dữ liệu sang kiểu boolean, ta sử dụng (bool)
hoặc (boolean)
. Trong PHP, bool và boolean là cùng một ý nghĩa.
Ví dụ 8: Các ký tự 0 hoặc rỗng, null sẽ được quy về giá trị FALSE, còn lại là TRUE. Tuy nhiên, việc này không cần thiết vì PHP tự xem xét giá trị và quy về TRUE hay FALSE.
Ví dụ 9: Để kiểm tra một biến có phải kiểu boolean hay không, ta sử dụng hàm is_bool($bien)
. Kết quả trả về là TRUE nếu là kiểu bool, ngược lại là FALSE nếu không phải kiểu bool.
3. Kiểu số thực
Kiểu số thực là những số có phần dư, trong khi kiểu INT là những số không có phần dư. Ví dụ, số 1.234 là kiểu số thực, còn 1234 là kiểu số nguyên (INT). Kích thước của kiểu số thực phụ thuộc vào từng nền tảng, nhưng giá trị lớn nhất xấp xỉ 1.8e308. Các kiểu dữ liệu số thực trong PHP bao gồm float và double.
Ví dụ 10: Để ép kiểu dữ liệu sang kiểu số thực, ta sử dụng (float)
hoặc (double)
.
Ví dụ 11: Để kiểm tra một biến có phải kiểu số thực hay không, ta sử dụng hàm is_float($bien)
để kiểm tra cho kiểu float và is_double($bien)
để kiểm tra cho kiểu double. Hàm này sẽ trả về đúng hoặc sai ngay lập tức.
4. Kiểu chuỗi
Chúng ta đã biết rằng trong PHP, kiểu chuỗi bao gồm kiểu string (chuỗi) và char (ký tự). Mỗi ký tự có kích thước 1 byte và là một trong 256 ký tự khác nhau. Để khai báo một biến kiểu chuỗi, chúng ta chỉ cần gán giá trị chuỗi cho biến đó. Tất cả chuỗi phải được bao quanh bằng dấu nháy đơn '
hoặc dấu nháy kép "
.
Ví dụ 12: Để kiểm tra một biến có phải kiểu chuỗi hay không, ta sử dụng hàm is_string($bien)
.
5. Kiểu mảng (array)
Kiểu mảng là danh sách các phần tử có cùng kiểu dữ liệu và là một trong những kiểu dữ liệu phức tạp trong PHP. Có hai loại mảng là mảng một chiều và mảng nhiều chiều.
Khởi tạo và truy xuất các phần tử trong mảng
Ta có thể khai báo mảng bằng cách sử dụng các cú pháp sau:
Cách 1:
$array1 = array("A", "B", "C");
Cách 2:
$array2 = ["A", "B", "C"];
Cách 3:
$array3 = array();
$array3[] = "A";
$array3[] = "B";
$array3[] = "C";
Cách 4:
$array4 = array();
$array4[0] = "A";
$array4[] = "B";
$array4[] = "C";
Ví dụ 14: Để truy xuất các phần tử của mảng chỉ mục, ta sử dụng cú pháp $tenmang[$index]
, trong đó $index
là chỉ mục muốn lấy.
Mảng có chỉ mục
Mảng có chỉ mục là mảng mà các phần tử được định danh bằng một số (chỉ mục) và bắt đầu từ 0. Phần tử cuối cùng sẽ có chỉ mục là (n-1)
, với n
là tổng số phần tử của mảng. Ví dụ, nếu mảng có 10 phần tử thì các vị trí phần tử trong mảng lần lượt là [0] - [1] - [2] - [3] - [4] - [5] - [6] - [7] - [8] - [9]
.
Ví dụ 16: Đây là một ví dụ về mảng có chỉ mục. Ở ví dụ này, khi gán sinh viên "Nguyễn Văn B" vào mảng, ta không truyền tên mà chỉ sử dụng dấu []
. Kết quả là PHP sẽ tự động gán chỉ mục là 0 cho sinh viên "Nguyễn Văn B".
Mảng kết hợp
Mảng kết hợp là mảng mà các phần tử được định danh bằng một cái tên, và không có thứ tự nhất định.
Ví dụ 15: Đây là một ví dụ về mảng kết hợp. Lúc gán sinh viên "Nguyễn Văn B", chúng ta không truyền tên mà chỉ sử dụng dấu []
. Kết quả là PHP sẽ tự động gán chỉ mục là 0 cho sinh viên "Nguyễn Văn B".
Ví dụ 16: Để truy xuất các phần tử trong mảng kết hợp, ta sử dụng cú pháp $tenmang[$name]
, trong đó $name
là tên của phần tử muốn lấy.
Mảng một chiều và mảng nhiều chiều
Các ví dụ trước đó đều là mảng một chiều (bao gồm mảng chỉ mục và mảng kết hợp).
Mảng nhiều chiều là mảng có nhiều chỉ mục cho từng phần tử. Ví dụ, mảng 2 chiều có mỗi phần tử có 2 chỉ mục, mảng 3 chiều có mỗi phần tử có 3 chỉ mục, và cứ tiếp tục như vậy. Mảng nhiều chiều thực chất là mảng một chiều được biểu diễn dưới dạng nhiều chiều.
Với mảng nhiều chiều, mỗi phần tử được định vị ở điểm giao nhau của chỉ số cột và dòng hiện tại, như minh họa mảng 2 chiều dưới đây:
Kiểm tra một biến kiểu mảng
Để kiểm tra một biến có phải kiểu mảng (array) hay không, ta sử dụng hàm is_array($bien)
. Hàm này sẽ trả về TRUE nếu đúng và FALSE nếu không đúng.
6. Kiểu giá trị NULL
Kiểu giá trị NULL là kiểu đặc biệt trong PHP và cũng như các ngôn ngữ lập trình khác, nó mang giá trị rỗng. Khi khởi tạo một biến và gán bằng NULL, hệ thống sẽ không tốn bộ nhớ để lưu trữ giá trị. Do đó, việc sử dụng NULL rất có lợi.
Khi ép kiểu sang kiểu INT, kiểu NULL sẽ trở thành 0. Khi ép kiểu sang kiểu chuỗi, kiểu NULL sẽ trở thành rỗng. Khi ép kiểu sang kiểu boolean, kiểu NULL sẽ trở thành FALSE.
Ví dụ 19: Để kiểm tra một biến có giá trị NULL hay không, ta sử dụng hàm is_null($bien)
. Kết quả trả về là TRUE nếu đúng và FALSE nếu không đúng.
7. Kiểu đối tượng (Object)
Kiểu đối tượng liên quan đến kiến thức lập trình nâng cao, nên chúng ta sẽ bỏ qua phần này trong bài viết này.
Hy vọng qua bài viết này, bạn đã hiểu thêm về các kiểu dữ liệu và mảng trong PHP. Tiếp tục học tập và thực hành nhé!