$sigs=array(
'prod_id'=>array('required'=>true,'type'=>'int'),
'desc'=>array('required'=>true,'type'=>'string','function'=>'addcslashes')
);
sanitize_vars(&$_GET,$sigs);
function sanitize_vars(&$vars,$signatures,$redir_url=null)
{
$tmp=array();
// 遍历这些符号并且把它们添加到临时数组$tmp
foreach($signatures as $name => $sig)
{
if(!isset($vars[$name]) && isset($sig['required']) && $sig['required'])
{
// 如果变量在数组不存在,则重定向
if($redir_url)
{
header("Location: $redir_url");
}else
{
echo "Parameter $name not present and no redirect URL";
}
exit();
}
$tmp[$name]=$vars[$name];
if(isset($sig['type']))
{
settype($tmp[$name], $sig['type']);
}
// 用指定函数对变量进行操作,可以使用标准的php函数,或者使用自己定义的处理函数
if(isset($sig['function']))
{
$tmp[$name]={$sig['function']}($tmp[$name]);
}
}
$vars=$tmp;
}
过滤转型
最新推荐文章于 2024-09-18 14:44:46 发布