How does FILTER_VALIDATE_FLOAT differ from FILTER_SANITIZE_NUMBER_FLOAT in PHP?

FILTER_VALIDATE_FLOAT is used to check if a variable is a float value, while FILTER_SANITIZE_NUMBER_FLOAT is used to remove all non-numeric characters from a float number. In other words, FILTER_VALIDATE_FLOAT validates the format of a float value, while FILTER_SANITIZE_NUMBER_FLOAT sanitizes the input by removing any non-numeric characters.

// Example using FILTER_VALIDATE_FLOAT
$floatValue = "3.14";
if (filter_var($floatValue, FILTER_VALIDATE_FLOAT)) {
    echo "Valid float value";
} else {
    echo "Not a valid float value";
}

// Example using FILTER_SANITIZE_NUMBER_FLOAT
$floatNumber = "12.34abc";
$cleanFloat = filter_var($floatNumber, FILTER_SANITIZE_NUMBER_FLOAT);
echo $cleanFloat; // Output: 12.34