ホームページ  >  記事  >  バックエンド開発  >  PHP はフィルター拡張機能を使用してパラメーター処理を作成します。 class_PHP チュートリアル

PHP はフィルター拡張機能を使用してパラメーター処理を作成します。 class_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 14:57:45929ブラウズ

php 利用フィルター扩展编写のパラメータ处理类

クリップボードにコピーLiehuo.Net Codes引用内容:[www.bkjia.com] /**
* @パラメータ検証関数
* @method:
* @license http://www.blags.org/
* @created: July 02, 2011 11:00
* @copyright 1997-2011 The Martin Group
* @著者マーティン */
抽象クラス CFilter
{
/**
* 型
* @var 配列
*/
public static $varType = array(
'GET' => INPUT_GET,
'POST' = > INPUT_POST、
'COOKIE'=> INPUT_SERVER'=>
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_EMAIL' =>

/**
* サポートフィルターリスト
*/
プライベート静的関数 lists()
{
return filter_list();
}

/**
* 検証タイプ
* @param string $type
*/
パブリック静的関数 filterType($type)
{
$filter_list = self::lists();
return array_search($type,$filter_list) !== false ?真/偽;
}

/**
*
* @param $setVarType
*/
プライベート静的関数 getVarType($setVarType)
{
$setVarType = strtoupper($setVarType);
return isset(self::$varType[$setVarType]) ? self::$varType[$setVarType] : null;
}

/**
*
* @param string $setFilterType
*/
プライベート静的関数 getFilterType($setFilterType)
{
$setFilterType = strtoupper($setFilterType);
return isset(self::$filterType[$setFilterType]) ? self::$filterType[$setFilterType] : null;
}

/**
* パラメータが存在するかどうかを確認します
* @param string $setVarType
* @param string $varName
*/
パブリック静的関数 VarExists($setVarType,$varName)
{
$FilterVarType = self::getVarType($setVarType);
if (is_null($FilterVarType))
false を返す;
return filter_has_var(self::$varType[$FilterVarType], $varName);
}

/**
*
* @param string $setVarType
* @param string $varName
* @param string $filterType
*/
パブリック静的関数 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
*/
パブリック静的関数 FilterVar($var,$filterType)
{
$filterType = self::getFilterType($filterType);
return filter_var($var, $filterType);
}

/**
* 文字列
* @param 文字列 $var
*/
パブリック静的関数 String($var)
{
return self::FilterVar($var,'STRING');
}

パブリック静的関数 Int($var)
{
return self::FilterVar($var,'INT');
}

パブリック静的関数 Boolean($var)
{
return self::FilterVar($var,'INT');
}

パブリック静的関数 Float($var)
{
return self::FilterVar($var,'FLOAT');
}

/**
*
* @param string $var
* @param array $option array("options"=>array("regexp"=>"/^M(.*)/"))
*/
パブリック静的関数 Regexp($var,$option)
{
$filterType = self::getFilterType($filterType);
return filter_var($var, $filterType, $option);
}

パブリック静的関数 Url($var)
{
return self::FilterVar($var,'URL');
}

パブリック静的関数 Email($var)
{
return self::FilterVar($var,'EMAIL');
}

パブリック静的関数 Ip($var)
{
return self::FilterVar($var,'IP');
}

}

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/363945.html技術記事フィルタ拡張機能を使用して記述された PHP パラメータ処理クラス クリップボードにコピー 参照内容: [www.veryhuo.com] ?php /** * @パラメータ検証関数* @method: * @license http://www.blags.org/ *. ..
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。