Kết nối cơ sở dữ liệu MySQL với PHP sử dụng PDO
Trong bài này, chúng ta sẽ tìm hiểu về cách kết nối MySQL với PHP sử...
Kết quả sẽ mở trong tab mới, giới hạn trong website này.
Truy cập nhanh
Tìm kiếm gần đây
Trong bài này, chúng ta sẽ tìm hiểu kỹ về các kiểu dữ liệu số (number) 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. Và các bạn cần đọc lại […]
Trong bài này, chúng ta sẽ tìm hiểu kỹ về các kiểu dữ liệu số (number) 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. Và các bạn cần đọc lại bài Các kiểu dữ liệu (data type) trong PHP để nắm sơ lược về kiểu dữ liệu Integer và Float trong PHP.
Trong hệ thống 32bit, kiểu Integer lưu trữ một số nguyên từ -2147483648 (2^31-1) đến 2147483647 (2^31). Trong hệ thống 64bit, kiểu Integer lưu trữ một số nguyên từ -9223372036854775808 (2^63-1) đến 9223372036854775807 (2^63).
Lưu ý: Một giá trị nằm ngoài phạm vi lưu trữ trên sẽ được lưu trữ với kiểu dữ liệu Float.
PHP có các hằng số (constant) được xác định trước cho các số nguyên:
PHP có các function hỗ trợ kiểm tra xem một biến có đang lưu trữ số nguyên hay không:
<?php
echo "PHP_INT_MAX: ".PHP_INT_MAX."<br>";
echo "PHP_INT_MIN: ".PHP_INT_MIN."<br>";
echo "PHP_INT_SIZE: ".PHP_INT_SIZE." bytes<br>";
$x = 5985;
echo 'Is $x Integer? ';
var_dump(is_int($x));
$y = 59.85;
echo '<br>Is $y Integer? ';
var_dump(is_int($y));
?>
PHP_INT_MAX: 9223372036854775807
PHP_INT_MIN: -9223372036854775808
PHP_INT_SIZE: 8 bytes
Is $x Integer? bool(true)
Is $y Integer? bool(false)
Kiểu dữ liệu Float có thể lưu trữ giá trị lên đến 1.7976931348623E+308 và có tối đa là 14 chữ số ở phần thập phân.
PHP có các hằng số (constant) được xác định trước cho các số thực:
<?php
echo "PHP_FLOAT_MAX: ;".PHP_FLOAT_MAX."<br>";
echo "PHP_FLOAT_MIN: ".PHP_FLOAT_MIN."<br>";
echo "-PHP_FLOAT_MAX: ;".-PHP_FLOAT_MAX."<br>";
echo "PHP_FLOAT_DIG: ".PHP_FLOAT_DIG."<br>";
echo "PHP_FLOAT_EPSILON: ".PHP_FLOAT_EPSILON."<br>";
$x = 5985;
echo 'Is $x Float? ';
var_dump(is_float($x));
$y = 59.85;
echo '<br>Is $y Float? ';
var_dump(is_float($y));
?>
PHP_FLOAT_MAX: ;1.7976931348623E+308
PHP_FLOAT_MIN: 2.2250738585072E-308
-PHP_FLOAT_MAX: ;-1.7976931348623E+308
PHP_FLOAT_DIG: 15
PHP_FLOAT_EPSILON: 2.2204460492503E-16
Is $x Float? bool(false)
Is $y Float? bool(true)
Một giá trị lớn hơn PHP_FLOAT_MAX được coi là số vô cực (infinity). PHP có các function để kiểm tra xem một giá trị số là vô hạn hay hữu hạn:
<?php
$x = 1.9e411;
echo 'Is $x infinite? ';
var_dump(is_infinite($x));
echo "<br>";
var_dump($x);
?>
Is $x infinite? bool(true)
float(INF)
NaN là viết tắt của Not a Number. PHP cung cấp sẵn hàm is_nan() để kiểm tra nếu một giá trị không phải là một số.
<?php
$x = 200;
$y = acos(1.01);
var_dump($x);
echo "<br>";
var_dump($y);
?>
int(200)
float(NAN)
Một String trong PHP có thể chỉ bao gồm các chữ số. Hàm is_numeric() được sử dụng để xác định xem một String có chỉ gồm toàn các chữ số không. Hàm is_numeric() trả về true nếu biến là một số hoặc một chuỗi số, ngược lại trả về false.
<?php
$x = 5985;
echo "Is 5985 number? ";
var_dump(is_numeric($x));
echo "<br>";
$x = "5985";
echo "Is '5985' number? ";
var_dump(is_numeric($x));
echo "<br>";
$x = "59.85" + 100;
echo "Is '5985' + 100 number? ";
var_dump(is_numeric($x));
echo "<br>";
$x = "gochocit.com";
echo "Is 'gochocit.com' number? ";
var_dump(is_numeric($x));
echo "<br>";
$x = 0xf4c3b00c;
echo "Is 0xf4c3b00c number? ";
var_dump(is_numeric($x));
echo "<br>";
$x = "0xf4c3b00c";
echo "Is '0xf4c3b00c' number? ";
var_dump(is_numeric($x));
?>
Is 5985 number? bool(true)
Is '5985' number? bool(true)
Is '5985' + 100 number? bool(true)
Is 'gochocit.com' number? bool(false)
Is 0xf4c3b00c number? bool(true)
Is '0xf4c3b00c' number? bool(false)
Chúng ta có thể ép kiểu String và Float sang Integer trong PHP.
<?php
// Cast float to int
$x = 23465.768;
$int_cast = (int)$x;
echo $int_cast."<br>";
// Cast string to int
$x = "23465.768";
$int_cast = (int)$x;
echo $int_cast."<br>";
$y = "2345a.6789";
$int_cast = (int)$y;
echo $int_cast;
?>
23465
23465
2345
Hàm (int), (integer) hoặc intval() thường được sử dụng để ép kiểu một value sang Integer.