Code Tu Tam

Hàm is_float() trong PHP có chức năng gì.

Rate this post

Định nghĩa.

 is_float() là hàm kiểm tra một biến có phải thuộc kiểu dữ liệu số thực, số thập phân hay không (float).
Hàm tương thích trên PHP4,PHP5,PHP7.

Cú pháp.

cú pháp:

is_float ( mixed $var ) : bool

Trong đó:

$var là biến truyền vào.

Giá trị trả về:

Chú ý.
– Trong các trường hợp kiểm tra dữ liệu kiểu số viết dạng chuổi được lấy từ Form nên sử dụng hàm is_numberic()

Ví dụ.

<?php
var_dump(is_float(27.25));
var_dump(is_float('abc'));
var_dump(is_float(23));
var_dump(is_float(23.5));
var_dump(is_float(1e7));  //Notation Scientifique
var_dump(is_float(true));
?>

Kết quả:

bool(true)
bool(false)
bool(false)
bool(true)
bool(true)
bool(false)

Mô tả.

is_float() là hàm kiểm tra một biến có phải thuộc kiểu dữ liệu số thực hay không (float). hàm được sử dụng nhiều trong việc lấy dữ liệu và chuẩn hóa dữ liệu trước khi xử lý dữ liệu liên quan đến số thực.

Các hàm liên quan.

is_bool () – Xác định xem một biến có phải là kiểu  boolean không

is_int () – Xác định một biến có phải kiểu nguyên

is_numeric () – Xác định một biến có phải là một kiểu số

is_string () – Xác định một biến có phải kiểu chuỗi

is_array () – Xác định một biến có phải là một mảng

is_object () – Xác định một biến có phải kiểu đối tượng.

Thông tin thêm về hàm.

– Hàm is_float() thì không thể kiểm tra được chuỗi có phải số thập phân hay không để giải quyết điều này ta có thể viết một hàm đơn giản như sau.

function isfloat($f) return ($f == (string)(float)$f);
// $f là biến cần kiểm tra.

Ví dụ:

<?php 
function isfloat($f){
    return ($f == (string)(float)$f);
}
var_dump(isfloat('0.55555')); // Sử dụng hàm isfloat.
var_dump(is_float('0.5555')); // sử dụng hàm is_float trong PHP.
?>
Kết quả:
bool(true)
bool(false)

=> Ta thấy hàm isfloat() đã giải quyết được vấn đề không kiểm tra được giá trị trong một chuỗi mà hàm is_float() không giải quyết được.
–  Đối với nhưng trường hợp số float ngắn hay chuỗi string ngắn thì t có thể sử dụng hàm trên còn với những số float hơn hay chuỗi string dài hơn t có thể dùng hàm sau.

<?php

if (!function_exists("test_float")) {

    function test_float($test) {

        if (!is_scalar($test)) {return false;}

        $type = gettype($test);

        if ($type === "float") {
            return true;
        } else {
            return preg_match("/^\\d+\\.\\d+$/", $test) === 1;
        }

    }

}

$test "3.14159265358979323846264338g32795";
var_dump($test);
var_dump((float)$test);
var_dump($test == (string)(float)$test);
var_dump(test_float($test));

Kết qủa:
string(34) "3.14159265358979323846264338g32795"
float(3.1415926535898)
bool(false)
bool(false)

Trên đây là một vài tóm tắt về hàm is_float() để xem nhiều hơn các bạn có thể tham khảo trên php.net
Hi vọng qua bài viết trên các bạn có thể hiểu hơn về cách sử dụng của is_float() để có thể vận dụng một cách hợp lý nhất. Hãy chia sẻ bài viết tới nhiều người hơn để chúng ta cùng học tập nhé.

Cảm ơn các bạn đã ghé thăm codetutam.com.

Exit mobile version