php利用filter扩展编写的参数处理类_PHP教程
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php利用filter扩展编写的参数处理类_PHP教程,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3408字,纯文字阅读大概需要5分钟。
内容图文
php 利用filter 扩展编写的参数处理类 Copy to Clipboard引用的内容:[www.bkjia.com] /*** @参数验证函数
* @method:
* @license http://www.blags.org/
* @created:2011年07月02日 11时00分
* @copyright 1997-2011 The Martin Group
* @author Martin
* */
abstract class CFilter
{
/**
* 类型
* @var array
*/
public static $varType = array(
'GET' => INPUT_GET,
'POST' => INPUT_POST,
'COOKIE'=> INPUT_COOKIE,
'SERVER'=> INPUT_SERVER,
'ENV' => INPUT_ENV
);
public static $filterType = array(
'STRING' => FILTER_SANITIZE_STRING,
'INT' => FILTER_VALIDATE_INT,
'BOOLEAN' => FILTER_VALIDATE_BOOLEAN,
'FLOAT' => FILTER_VALIDATE_FLOAT,
'REGEXP' => FILTER_VALIDATE_REGEXP,
'URL' => FILTER_VALIDATE_URL,
'EMAIL' => FILTER_VALIDATE_EMAIL,
'IP' => FILTER_VALIDATE_IP,
);
/**
* 支持过滤列表
*/
private static function lists()
{
return filter_list();
}
/**
* 验证类型
* @param string $type
*/
public static function filterType($type)
{
$filter_list = self::lists();
return array_search($type,$filter_list) !== false ? true : false;
}
/**
*
* @param $setVarType
*/
private static function getVarType($setVarType)
{
$setVarType = strtoupper($setVarType);
return isset(self::$varType[$setVarType]) ? self::$varType[$setVarType] : null;
}
/**
*
* @param string $setFilterType
*/
private static function getFilterType($setFilterType)
{
$setFilterType = strtoupper($setFilterType);
return isset(self::$filterType[$setFilterType]) ? self::$filterType[$setFilterType] : null;
}
/**
* 检测参数是否存在
* @param string $setVarType
* @param string $varName
*/
public static function VarExists($setVarType,$varName)
{
$FilterVarType = self::getVarType($setVarType);
if (is_null($FilterVarType))
return false;
return filter_has_var(self::$varType[$FilterVarType], $varName);
}
/**
*
* @param string $setVarType
* @param string $varName
* @param string $filterType
*/
public static function FilterInput($setVarType, $varName, $filterType = 'INT')
{
$FilterVarType = self::getVarType($setVarType);
$filterType = self::getFilterType($filterType);
if (is_null($FilterVarType) || is_null($filterType))
return false;
return filter_input($FilterVarType, $varName, $filterType);
}
/**
* 验证变量
* @param string $var
* @param string $filterType
*/
public static function FilterVar($var,$filterType)
{
$filterType = self::getFilterType($filterType);
return filter_var($var, $filterType);
}
/**
* 字符串
* @param string $var
*/
public static function String($var)
{
return self::FilterVar($var,'STRING');
}
public static function Int($var)
{
return self::FilterVar($var,'INT');
}
public static function Boolean($var)
{
return self::FilterVar($var,'INT');
}
public static function Float($var)
{
return self::FilterVar($var,'FLOAT');
}
/**
*
* @param string $var
* @param array $option array("options"=>array("regexp"=>"/^M(.*)/"))
*/
public static function Regexp($var,$option)
{
$filterType = self::getFilterType($filterType);
return filter_var($var, $filterType, $option);
}
public static function Url($var)
{
return self::FilterVar($var,'URL');
}
public static function Email($var)
{
return self::FilterVar($var,'EMAIL');
}
public static function Ip($var)
{
return self::FilterVar($var,'IP');
}
}
http://www.bkjia.com/PHPjc/363945.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/363945.htmlTechArticlephp 利用filter 扩展编写的参数处理类 Copy to Clipboard 引用的内容: [www.veryhuo.com] ?php /** * @参数验证函数 * @method: * @license http://www.blags.org/ *...
内容总结
以上是互联网集市为您收集整理的php利用filter扩展编写的参数处理类_PHP教程全部内容,希望文章能够帮你解决php利用filter扩展编写的参数处理类_PHP教程所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。