I'm getting a string from a $_GET and I want to test if it could be a boolean, before I use it for a part of a mysql query. Is there a better way of doing it than:
function checkBool($string){
$string = strtolower($string);
if ($string == "true" || $string == "false" ||
$string == "1" || $string == "0"){
return true;
}
else {
return false;
}
}
if (checkBool($_GET['male'])){
$result = mysql_query(
"SELECT * FROM my_table " .
"WHERE male='".$_GET['male']."'") or die(mysql_error());
}
You can either use is_bool()
or as suggested on php.net:
<?php
$myString = "On";
$b = filter_var($myString, FILTER_VALIDATE_BOOLEAN);
?>
http://php.net/manual/en/function.is-bool.php
The latter one will accept strings like "on" and "yes" as true as well.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With