Hàm is_numeric() trong PHP

1. Chức năng của hàm is_numeric()

Hàm is_numeric() trong PHP có chức năng kiểm tra một biến có phải là một số hoặc một chuỗi gồm các chữ số hay không.

2. Cú pháp của hàm is_numeric()

is_numeric(mixed $value): bool

Trong đó:

  • $value là biến cần kiểm tra có phải là một số hoặc một chuỗi gồm các chữ số hay không. Biến này khi truyền vào cho hàm is_numeric() thì có thể là bất kỳ kiểu dữ liệu nào.
  • Kiểu dữ liệu trả về là bool. Nếu $valuemột số hoặc một chuỗi gồm các chữ số thì trả về true, nếu không thì trả về false.

3. Một số ví dụ sử dụng hàm is_numeric()

<?php
$arr = array('1', 2);
$values = array(
    "42",
    " 7.8",
    " 1ab",
    1337,
    0x539,
    02471,
    0b10100111001,
    1337e0,
    "0x539",
    "02471",
    "0b10100111001",
    "1337e0",
    "not numeric",
    $arr,
    9.1,
    null,
    '',
    true,
    false
);
foreach ($values as $value) {
    echo "is_numeric(";
    var_export($value);
    echo ") = ";
    var_dump(is_numeric($value));
}
?>

Kết quả

is_numeric('42') = bool(true)
is_numeric(' 7.8') = bool(true)
is_numeric(' 1ab') = bool(false)
is_numeric(1337) = bool(true)
is_numeric(1337) = bool(true)
is_numeric(1337) = bool(true)
is_numeric(1337) = bool(true)
is_numeric(1337.0) = bool(true)
is_numeric('0x539') = bool(false)
is_numeric('02471') = bool(true)
is_numeric('0b10100111001') = bool(false)
is_numeric('1337e0') = bool(true)
is_numeric('not numeric') = bool(false)
is_numeric(array ( 0 => '1', 1 => 2, )) = bool(false)
is_numeric(9.1) = bool(true)
is_numeric(NULL) = bool(false)
is_numeric('') = bool(false)
is_numeric(true) = bool(false)
is_numeric(false) = bool(false)

Các bạn cần cần lưu ý một số cách viết khác của số như:

    • 0x539 là số 1337 được biểu diễn dưới hệ cơ số 16
    • 02471 là số 1337 được biểu diễn dưới hệ cơ số 8
    • 0b10100111001 là số 1337 được biểu diễn dưới hệ nhị phân
    • 1337e0 tương đương 1337.100 (một ký hiệu của lũy thừa trong toán học)

Các bạn có thể tham khảo thêm quy ước numberic string trong PHP.

Mời bạn đánh giá bài viết
Chia sẻ trên mạng xã hội:

Trả lời

Lưu ý:

1) Vui lòng bình luận bằng tiếng Việt có dấu.

2) Khuyến khích sử dụng tên thật và địa chỉ email chính xác.

3) Mọi bình luận trái quy định sẽ bị xóa bỏ.