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');
}
}
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사
R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
어 ass 신 크리드 그림자 : 조개 수수께끼 솔루션
2 몇 주 전ByDDD
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

WebStorm Mac 버전
유용한 JavaScript 개발 도구

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

드림위버 CS6
시각적 웹 개발 도구
