A simple method to check what type input var is:
<code>
class filter{
/*
* @var: $types (array): holds all the supported datatypes, their number, and the callback that need to be made
* to check if it's valid.
*/
private $types = array('string'=> array('number'=> '1', 'callback'=> 'is_string'),
'int'=> array('number' => '2', 'callback' => 'is_int'),
'array'=> array('number' => '3', 'callback' => 'is_array'),
'object'=> array('number' => '4', 'callback' => 'is_object'),
'float'=> array('number' => '5', 'callback' => 'is_float'),
'bool'=> array('number' => '6', 'callback' => 'is_bool'),
'resource'=> array('number' => '7', 'callback' => 'is_resource'),
'null'=> array('number' => '8', 'callback' => 'is_null'));
function __construct(){
}
/*
* @desc: This method checks what type the input variable is
*
* @param: $var (mixed): The var that will be checked
*
* @param: $output_type (string): How the result will be returned
*
* @returns: string or int
*/
function type($var, $output_type = 'numeric'){
if(is_string($var)){
$var_type = array("string", "1");
} elseif(is_int($var)){
$var_type = array("int", "2");
} elseif(is_array($var)){
$var_type = array("array", "3");
} elseif(is_object($var)){
$var_type = array("object", "4");
} elseif(is_float($var)){
$var_type = array("float", "5");
} elseif(is_bool($var)){
$var_type = array("bool", "6");
} elseif(is_resource($var)){
$var_type = array("resource", "7");
} elseif(is_null($var)){
$var_type = array("null", "8");
}
if($output_type == 'text'){
return $var_type[0];
} else{
return $var_type[1];
}
}
}</code>