非法字符替换程序

字体大小: 中小 标准 ->行高大小: 标准
<?php 

//******************************************************** 
//-- 程序名称:StrSwap V1.0 
//-- 程序编写:cngift@163.com 
//-- 完成: 2002-8-1 
//-- 程序用途:Get或Post提交值的非法数据处理 
//-- 备注: 本程序需要加载在所有程序处理前使用,以便自动进行 
//-- 程序中使用的变量的替换 
//-- Copyright By cngift ◎ 2002 
//******************************************************** 

class StrSwap{ 

//当以Get方式提交变量时用于连接变量的连接符 
var $GetSplitStr = "&&"; 
var $TempArray = array(); 
var $VariableArray = array(); 

//******************************************************** 
//-- 程序名称:Main() 
//-- 程序用途:本类的默认运行方式 
//-- 传入参数:无 
//******************************************************** 

function Main(){ 

global $REQUEST_METHOD; 
if("GET"==$REQUEST_METHOD){ 

$this->SubGetStrToArray(); 

} 
if("POST"==$REQUEST_METHOD){ 

$this->SubPostStrToArray(); 

} 

$this->GlobalVariable(); 



} 

//******************************************************** 
//-- 程序名称:SubGetStrToArray() 
//-- 程序用途:当变量以Get方式提交时所调用的方法 
//-- 传入参数:无 
//******************************************************** 

function SubGetStrToArray(){ 

global $QUERY_STRING; 
$this->TempArray = explode($this->GetSplitStr,$QUERY_STRING); 

for($i=0;$i<sizeof($this->TempArray);$i++){ 

$temp = explode('=',$this->TempArray[$i]); 
$this->VariableArray[$i][0] = $temp[0]; 
$this->VariableArray[$i][1] = $this->StrReplace($temp[1]); 

} 

} 

//******************************************************** 
//-- 程序名称:SubPostStrToArray() 
//-- 程序用途:当变量以POST方式提交时所调用的方法 
//-- 传入参数:无 
//******************************************************** 

function SubPostStrToArray(){ 

global $_POST;
reset($_POST);
for($i=0;$i<count($_POST);$i++){
$this->VariableArray[$i][0] = key($_POST);
$this->VariableArray[$i][1] = $this->StrReplace($_POST[key($_POST)]);
next($_POST);
}
}
//********************************************************
//-- 程序名称:StrReplace()
//-- 程序用途:替换变量中的非法字符
//-- 传入参数:变量值
//********************************************************
function StrReplace($str){
$str = StripSlashes($str);
$str = str_replace(chr(92),'',$str);
$str = str_replace(chr(47),'',$str);
$str = str_replace(chr(10).chr(13),"<br>",$str);
$str = str_replace('<',"&lt;",$str);
$str = str_replace('>',"&gt;",$str);
$str = str_replace(';',";",$str);
$str = str_replace('"',"“",$str);
$str = str_replace("'","‘",$str);
$str = str_replace(" "," ",$str);
$str = str_replace("/**/"," ",$str);
return trim($str);
}
//********************************************************
//-- 程序名称:GlobalVariable()
//-- 程序用途:声明变量为全局变量方便其他程序调用
//-- 传入参数:无
//********************************************************
function GlobalVariable(){
for($i=0;$i<sizeof($this->VariableArray);$i++){
global $this->VariableArray[$i][0];
$this->VariableArray[$i][0] = $this->VariableArray[$i][1];
}
}
}
?>

此文章由 http://www.ositren.com 收集整理 ,地址为: http://www.ositren.com/htmls/30367.html