Hướng dẫn php is not numeric

Hàm is_numeric[] sẽ kiểm tra biến có thuộc kiểu số hoặc chuỗi số hay không. chuỗi số bao gồm bất kì chữ số nào, số thập phân, số mũ .v.v. Nếu biến thuộc một trong số những kiểu trên hàm trả về TRUE, ngược lại hàm trả về FALSE.

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Cú pháp

Cú pháp: is_numeric[ $var];

Trong đó

  • $var là biến cần kiểm tra.

Ví dụ

Đây là ví dụ mình lấy từ trang chủ php.net.

Bài viết này được đăng tại [free tuts .net]

Code

$tests = array[
    "42",
    1337,
    0x539,
    02471,
    0b10100111001,
    1337e0,
    "not numeric",
    9.1
];

foreach [$tests as $element] {
    if [is_numeric[$element]] {
        echo "'{$element}' is numeric 
" ; } else { echo "'{$element}' is NOT numeric
"; } }

Kết quả

'42' is numeric 
'1337' is numeric 
'1337' is numeric 
'1337' is numeric 
'1337' is numeric 
'1337' is numeric 
'not numeric' is NOT numeric 
'9.1' is numeric 

Tham khảo: php.net

Home » Code

Lỗi “A non-numeric value encountered” xảy ra khi một giá trị không phải số đã được sử dụng để thực hiện một phép toán số học. Có thể tránh lỗi này bằng cách sử dụng các hàm điều khiển trên các biến. Lỗi này cũng có thể liên quan đến sự nhầm lẫn với ngôn ngữ khác trong quá trình phát triển trang web của bạn.
Lỗi này thường phát sinh trong PHP 7.1, một Cảnh báo sẽ được phát ra nếu gặp phải giá trị không phải số. Chi tiết.

Sử dụng hàm is_numeric[] để kiểm tra xem đó có phải là số hay không trước khi thực hiện tính toán.
Ví dụ:

Kết quả
PHP_INT_MAX: 9223372036854775807
PHP_INT_MIN: -9223372036854775808
PHP_INT_SIZE: 8 bytes
Is $x Integer? bool[true]
Is $y Integer? bool[false]

2. Kiểu dữ liệu số thực [Float] trong PHP

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_FLOAT_MAX: Số thực lớn nhất có thể lưu trữ
  • PHP_FLOAT_MIN: Số thực nhỏ nhất có thể lưu trữ
  • -PHP_FLOAT_MAX: Số thực âm [negative Float] nhỏ nhất có thể lưu trữ
  • PHP_FLOAT_DIG: Số chữ số thập phân có thể được làm tròn thành một số Float
  • PHP_FLOAT_EPSILON: Số x dương nhỏ nhất x + 1.0! = 1.0

Kết quả
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]

Số vô cực trong PHP [PHP Infinity]

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:

  • is_finite[]
  • is_infinite[]

Kết quả
Is $x infinite? bool[true]
float[INF]

3. Not a Number trong PHP [PHP NaN]

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ố.


Kết quả
int[200]
float[NAN]

4. Chuỗi số trong PHP [PHP Numerical Strings]

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.


Kết quả
23465
23465
2345

Hàm [int], [integer] hoặc intval[] thường được sử dụng để ép kiểu một value sang Integer.

  • Cách xử lý lỗi [error] trong PHP
  • Sử dụng interface trong Java
  • Thêm [insert] dữ liệu trong MySQL với PHP
  • Chương trình tính giai thừa [factorial] trong Java
  • Hàm khởi tạo [constructor] và hàm hủy [destructor] của class trong PHP

Chủ Đề