Các kiểu dữ liệu trong PHP (Phần 1)

Trong php có tổng cộng 7 kiểu dữ liệu:
  • Kiểu INT
  • Kiểu Boolean
  • Kiểu Số Thực (float, double)
  • Kiểu Chuỗi
  • Kiểu Mảng (array)
  • Kiểu NULL
  • Kiểu Đối Tượng (object)

1. Kiểu dữ liệu INT

Chữ INT là viết tắt của chữ INTEGER, là một kiểu dữ liệu dạng số và có thể ở viết ở nhiều cơ số khác nhau.
Ví dụ 1:
1
2
3
4
5
6
<?php
$thap_phan = 123; // Số thập phân
$so_am = -123; // Số âm
$bat_phan = 0123; // số bát phân
$thap_luc_phan = 0x1A; // và số thập lục phân
?>
Kiểu số INT Chúng ta không dùng dấu nháy để bao quanh nó, kích thước của kiểu INT là 32bit. Trong PHP không hỗ trợ nhiều kiểu Unsigned Integer (Số nguyên dương) nên nếu bạn sử dụng vượt quá giới hạn của nó thì mặc nhiên trình biên dịch sẽ hiểu đây là kiểu Float (số thực), tuy nhiên không phải lúc nào điều này cũng đúng cho trường hợp số dương.

Khai báo biến kiểu INT

Để khai báo một biến kiểu INT bạn sẽ gán giá trị cho nó là số nguyên (kể cả số âm).
Ví dụ 2:
1
2
3
<?php
$tuoi = 12; // biến $tuoi là kiểu INT có giá trị = 12
?>

Ép dữ liệu sang kiểu INT

Cú Pháp(int)$ten_bien;
Ví dụ 3:
1
2
3
4
<?php
$tuoi '98'// biến tuổi là một chuỗi có giá trị bằng '98'
$tuoi = (int)$tuoi// lúc này biến $tuoi là một kiểu int có giá trị 98
?>
Việc chuyển đổi này trong PHP đôi khi lại không cần thiết vì các kiểu dữ liệu trong php tự động chuyển các biến sang các kiểu thích hợp để thực hiện phép tính, tuy nhiên sau khi thực hiện tính toán thì biến đó sẽ tự chuyển lại kiểu dữ liệu ban đầu.
Ví dụ 4:
1
2
3
4
5
6
7
<?php
$a '123';  // Biến $a là kiểu chuỗi có giá trị bằng '123'
$b = 123; // Biến $b là kiểu INT có giá trị bằng 123
$c $a $b// Biến C là kết quả của phép toán $a + $b và sẽ có giá trị là 246 nên nó là kiểu INT
var_dump(is_int($c)); // hàm is_int($tenbien) dùng để kiểm tra một biến có phải là kiểu INT hay không
var_dump(is_int($a)); // kết quả là false vì biến $a là kiểu string
?>
Trong ví dụ này các bạn thấy biến $a là chuỗi còn biến $b là số, khi ta cộng 2 biến lại thì các biến sẽ tự động chuyển sang kiểu số INT thích hợp để cộng, và kết quả là kiểu INT gán vào biến $c. Để kiểm tra bạn dùng dòng lệnh var_dump(is_int($c)); để xuất ra màn hình kết quả kiểm tra.
Ví dụ 5:
1
2
3
4
5
<?php
$a 'a123'// biến $a có giá trị là chuỗi 'a123'
$a = (int)$a// chuyển $a sang kiểu INT
echo $a// kết quả xuất ra màn hình là số 0
?>
Chạy đoạn lệnh này các bạn sẽ thấy kết quả ra số 0. Tại sao? vì bạn thấy biến $a có ký tự đầu tiên không phải ở dạng số nên nó sẽ tự động cắt bỏ tất cả những ký tự đằng sau ký tự a nên chuỗi này rỗng, mà giá trị rỗng chuyển sang kiểu INT có giá trị bằng không.
Ví dụ 6:
1
2
3
4
5
<?php
$a '123a'// biến $a có giá trị là chuỗi '123a'
$a = (int)$a// chuyển $a sang kiểu INT
echo $a// kết quả xuất ra màn hình là số 123
?>
Chạy đoạn code này kết quả xuất ra màn hình là 123, cũng như giải thích ở trên nó sẽ xóa các ký tự bắt đầu từ ký tự a nên chuỗi sẽ còn ’123′, chuyển sang kiểu INT  thành 123.

Kiểm tra dữ liệu có phải kiểu INT.

Để kiểm tra một biến nào đó có phải kiểu INT không bạn dùng 2 hàm is_int($bien) hoặc is_integer($bien). kết quả trả về giá trịTrue nếu là kiểu INT và False nếu không phải kiểu INT.

2. Kiểu dữ liệu boolean

Đây là một kiểu dữ liệu đơn giản nhất trong các kiểu dữ liệu trong PHP, nó chỉ chứa 2 giá trị là đúng hoặc sai (TRUE hoặc FALSE). Để tạo biến kiểu boolean thì  bạn gán giá trị cho nó là TRUE hoặc FALSE. Lưu ý  TRUE, FALSE  không phân biệt hoa thường, nghĩa là bạn gõ thế nào cũng được miễn là đúng.
Ví dụ 7:
1
2
3
<?php
$is_admin = false// biến $admin là kiểu boolean có gái trị là false
?>

Ép dữ liệu sang kiểu boolean.

Tương tự như kiểu INT bạn sử dụng (bool) hoặc (boolean) để ép kiểu sang kiểu bool. Như vậy trong PHP thì bool và boolean là 2 từ khóa có cùng một ý nghĩa.

Ví dụ 8:
1
2
3
4
5
6
<?php
$bool = 1; // biến $bool là kiểu int
$bool = (bool)$bool// lúc này biến $bool sẽ có kiểu boolean
// Hoặc
$bool = (boolean)$bool// lúc này biến $bool sẽ có kiểu boolean
?>
Các ký tự 0, ký tự trống và null đều được quy về giá trị FALSE, các ký tự còn lại quy về TRUE. Việc chuyển đổi này đôi khi cũng không cần thiết vì php tự xem xét giá trị và quy về TRUE hay FALSE.
Ví dụ 9:
1
2
3
4
5
6
7
8
<?php
$a = 123; // TRUE
$b = 0; // FALSE
$c '0'// FALSE
$d 'a123b' // TRUE
$e = null; // FALSE
$f ''// FALSE
?>

Kiểm tra một biến kiểu boolean

Để kiểm tra một biến có phải kiểu boolean bạn dùng hàm is_bool($bien); để kiểm tra, kết quả của hàm này trả về 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

Hiểu một cách nôm na kiểu số thực là những số có phần dư, còn kiểu INT là những số không dư phần nào, như số 1.234 là kiểu số thực, 1234 là kiểu số nguyên (INT). Kích cỡ của nó phụ thuộc xác định phụ thuộc vào từng platform nhưng giá trị lớn nhất xấp xỉ 1.8e308, các kiểu dữ liệu trong php của kiểu số thực gồm có kiểu float, double.
Ví dụ 10:
1
2
3
<?php
$a = 1.234; // Kiểu số thực
?>

Ép dữ liệu sang kiểu số thức.

Bạn dùng (float), (double) để chuyển kiểu dữ liệu sang số thực cho một biến
Ví dụ 11:
1
2
3
4
5
<?php
$a = 123; // biến $a kiểu int
$a = (float)$a// Biến $a lúc này kiểu số thực (float)
$a = (double)$a// Biến $a lúc này kiểu ố thực (double)
?>

Kiểm tra một biến kiểu số thực.

Để kiểm tra một biến phải kiểu số thực không bạn dùng hàm is_float($bien) để kiểm tra cho kiểu float, is_double($bien) để kiểm tra cho kiểu double. Kết quả 2 hàm này trả về TRUE nếu đúng, FALSE nếu sai.

4. Kiểu chuỗi

Các kiểu dữ liệu trong php thì kiểu chuỗi mình gồm  kiểu string (chuỗi) và char (ký tự), mỗi ký tự là  1 byte và là một trong 256 ký tự khác nhau, để khai báo báo các bạn chỉ việc khai báo một biến và gán giá trị chuỗi cho nó, chuỗi phải được bao quanh bằng dấu nháy đơn hoặc dấu nháy kép . Ép kiểu cũng như trên ta dùng (string) để chuyển sang kiểu chuỗi.
Ví dụ 12:
1
2
3
4
<?php
$a = 123; // khai báo biến $a kiểu int có giá trị 123
$a = (string)$a//Chuyển biến $a thành kiểu chuỗi và có giá trị là '123'
?>

Kiểm ta một biến kiểu string

Để kiểm tra một biến kiểu chuỗi (string) ta dùng hàm is_string($bien), kết quả hàm này trả về TRUE nếu đúng và FALSE nếu không đúng.
Nếu bạn muốn tìm hiểu thêm về chuỗi thì có thể xem bài các hàm xử lý chuỗi trong php.

Tin tức khác:

Related Post

Next
Previous
Click here for Comments

0 nhận xét:



:)
:(
hihi
:-)
:D
=D
:-d
;(
;-(
@-)
:P
:o
:>)
(o)
[-(
:-?
(p)
:-s
(m)
8-)
:-t
:-b
b-(
:-#
=p~
$-)
(y)
(f)
x-)
(k)
(h)
(c)
cheer