Định nghĩa và cách sử dụng
Trong PHP, Integer là một kiểu dữ liệu scalar đại diện cho hằng số số nguyên không có phần phân số. PHP cho phép biểu diễn integer trong hệ thập phân, thập lục phân, bát phân hoặc nhị phân bằng cách thêm tiền tố phù hợp.
Mặc định Integer được hiểu ở dạng thập phân. Đối với hệ thập lục phân, bát phân và nhị phân, lần lượt thêm tiền tố 0x, 0 và 0b.
Cú pháp
<?php // Gán literal integer cho biến $var = 232; // Thập phân $var1 = 045; // Bát phân (0 prefix) $var2 = 0xB2; // Thập lục phân $var3 = 0b1001; // Nhị phân ?>
Để tăng tính đọc hiểu, literal integer có thể dùng ký tự _ làm dấu phân cách, ký tự này sẽ bị bỏ qua bởi PHP scanner.
<?php $var = 55_467; // được xử lý như 55467 ?>
Phiên bản PHP
Dấu phân cách _ khả dụng từ PHP 7.4.
Ví dụ
Biểu diễn integer trong các hệ đếm
<?php $var = 10; echo "decimal: " . $var . "\n"; // Số bát phân $var1 = 010; echo "Octal: " . $var1 . "\n"; // Số thập lục phân $var2 = 0x10; echo "hexadecimal: " . $var2 . "\n"; // Số nhị phân $var3 = 0b10; echo "binary: " . $var3; ?>
Kết quả
decimal: 10 Octal: 8 hexadecimal: 16 binary: 2
Sử dụng dấu phân cách _
<?php $var = 1_45_690; echo $var . "\n"; ?>
Kết quả
145690
Integer vượt quá phạm vi cho phép
Nếu integer vượt quá phạm vi cho phép, nó sẽ được chuyển thành float:
<?php $var = PHP_INT_MAX + 1; var_dump($var); ?>
Kết quả
float(9.2233720368548E+18)