/**
* 接收输入函数
* array $method 输入的数组(可用字符串get、post表示)
* string $name 从数组中取出的变量名
* string $type 表示类型的字符串
* mixed $default 变量不存在时使用的默认值
* @return mixed 返回的结果
*/
function input($method,$name,$type='s',$default=''){
$method=strtolower($method);
switch($method){
case 'get':$method=$_GET;
break;
case 'post':$method=$_POST;
break;
}
$data=isset($method[$name])? $method[$name] : $default;
switch($type){
case 's' : //字符串
return is_string($data) ?$data :$default;
case 'd': //整型
return (int) $data;
case 'a': //数组
return is_array($data) ?$data:[];
case 'b': //boolean
return is_bool($data) ?$data : FALSE;
default:
trigger_error('不存在的过滤类型:'.$type);
}
}
}
示例:
//接收$_POST['name']并指定类型为字符串
$name=input('post', 'name','s');
//接收$_GET['id']并指定为整型
$id=input('get', 'id','d');
//接收$_GET['page']并指定类型为整型,默认值为1
$page=input('get', 'page','d',1);