您的位置:首页 > 其它

过滤转型

2015-07-23 23:07 239 查看
$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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: