过滤转型

来源:互联网 发布:spark hbase性能优化 编辑:程序博客网 时间:2024/05/17 23:52
$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;}
0 0
原创粉丝点击