Get或Post提交值的非法資料處理_PHP教程
Jul 21, 2016 pm 04:09 PM
Get或Post提交值的非法資料處理
//**************************************************** ****
//-- 程式名稱:StrSwap V1.01
//-- 程式編寫:[email]cngift@163.com[/email]
//-- 完成: 2002 -8-1
//-- 程式用途:Get或Post提交值的非法資料處理
//-- 備註: 本程式需要載入在所有程式處理前使用,以便自動進行
/ /-- 程式中使用的變數(shù)的替換
//-- 由於發(fā)現(xiàn)嚴重BUG緊急升級
//-- Copyright By cngift ◎ 2002
//********** **********************************************
class StrSwap{
//當(dāng)以Get方式提交變數(shù)時用於連接變數(shù)的連接符號
var $GetSplitStr = "&&";
var $TempArray = array();
var $VariableArray = array();
//************************************** ************************
//-- 程式名稱:Main()
//-- 程式用途:本類的預(yù)設(shè)運作方式
//-- 傳入?yún)?shù):無
//************************************ **************************
function Main(){
global $REQUEST_METHOD;
if("GET"==$REQUEST_METHOD){
$this->SubGetStrToArray();
}
if("POST"==$REQUEST_METHOD){
$this->SubPostStrToArray();
}
$this->GlobalVariable();
}
}
}
}
}
}
}
//************************************************ ********
//-- 程式名稱:SubGetStrToArray()
//-- 程式用途:當(dāng)變數(shù)以Get方式提交時所呼叫的方法
//-- 傳入?yún)?shù):無
//***************************************** **************
function SubGetStrToArray(){
global $QUERY_STRING;
$this->TempArray = explode($this- >GetSplitStr,$QUERY_STRING);
for($i=0;$i
$temp = explode('=' ,$this->TempArray[$i]);
$this->VariableArray[$i][0] = $temp[0];
$this->VariableArray[$i][1] = $this->StrReplace($temp[1]);
}
}
//*************** *****************************************
//-- 程式名稱:SubPostStrToArray()
//-- 程式用途:當(dāng)變數(shù)以POST方式提交時所呼叫的方法
//-- 傳入?yún)?shù):無
//******** ************************************************
function SubPostStrToArray(){
global $_POST;
reset($_POST);
for($i=0;$i
$this->VariableArray[$i][0] = key($_POST);
$this->VariableArray[$i][1] = $this->StrReplace($_POST [key($_POST)]);
next($_POST);
}
}
//************* *******************************************
//--程式名稱:StrReplace()
//-- 程式用途:取代變數(shù)中的非法字元
//-- 傳入?yún)?shù):變數(shù)值
//********** **********************************************
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),"
",$str);
$str = str_replace( '$str = str_replace('>',">",$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()
//-- 程式用途:宣告變數(shù)為全域變數(shù)方便其他程式呼叫
//--傳入?yún)?shù):無
//**************************************** ****************
function GlobalVariable(){

熱AI工具

Undress AI Tool
免費脫衣圖片

Undresser.AI Undress
人工智慧驅(qū)動的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

在PHP中獲取當(dāng)前會話ID的方法是使用session_id()函數(shù),但必須先調(diào)用session_start()才能成功獲取。 1.調(diào)用session_start()啟動會話;2.使用session_id()讀取會話ID,輸出類似abc123def456ghi789的字符串;3.若返回為空,檢查是否遺漏session_start()、用戶是否首次訪問或會話是否被銷毀;4.會話ID可用於日誌記錄、安全驗證和跨請求通信,但需注意安全性。確保正確開啟會話後即可順利獲取ID。

要從PHP字符串中提取子字符串,可使用substr()函數(shù),其語法為substr(string$string,int$start,?int$length=null),若未指定長度則截取至末尾;處理多字節(jié)字符如中文時應(yīng)使用mb_substr()函數(shù)以避免亂碼;若需根據(jù)特定分隔符截取字符串,可使用explode()或結(jié)合strpos()與substr()實現(xiàn),例如提取文件名擴展名或域名。

UnittestinginPHPinvolvesverifyingindividualcodeunitslikefunctionsormethodstocatchbugsearlyandensurereliablerefactoring.1)SetupPHPUnitviaComposer,createatestdirectory,andconfigureautoloadandphpunit.xml.2)Writetestcasesfollowingthearrange-act-assertpat

在PHP中,最常用的方法是使用explode()函數(shù)將字符串拆分為數(shù)組。該函數(shù)通過指定的分隔符將字符串分割成多個部分並返回數(shù)組,語法為explode(separator,string,limit),其中separator為分隔符,string為原字符串,limit為可選參數(shù)控制最大分割數(shù)量。例如$str="apple,banana,orange";$arr=explode(",",$str);結(jié)果為["apple","bana

JavaScript的數(shù)據(jù)類型分為原始類型和引用類型。原始類型包括string、number、boolean、null、undefined和symbol,其值不可變且賦值時復(fù)制副本,因此互不影響;引用類型如對象、數(shù)組和函數(shù)存儲的是內(nèi)存地址,指向同一對象的變量會相互影響。判斷類型可用typeof和instanceof,但需注意typeofnull的歷史問題。理解這兩類差異有助於編寫更穩(wěn)定可靠的代碼。

std::chrono在C 中用於處理時間,包括獲取當(dāng)前時間、測量執(zhí)行時間、操作時間點與持續(xù)時間及格式化解析時間。 1.獲取當(dāng)前時間使用std::chrono::system_clock::now(),可轉(zhuǎn)換為可讀字符串但係統(tǒng)時鐘可能不單調(diào);2.測量執(zhí)行時間應(yīng)使用std::chrono::steady_clock以確保單調(diào)性,並通過duration_cast轉(zhuǎn)換為毫秒、秒等單位;3.時間點(time_point)和持續(xù)時間(duration)可相互操作,但需注意單位兼容性和時鐘紀(jì)元(epoch)

在PHP中,要將一個會話變量傳到另一個頁面,關(guān)鍵在於正確開啟會話並使用相同的$_SESSION鍵名。 1.每個頁面使用session變量前必須調(diào)用session_start(),且放在腳本最前面;2.在第一個頁面設(shè)置session變量如$_SESSION['username']='JohnDoe';3.在另一頁面同樣調(diào)用session_start()後通過相同鍵名訪問變量;4.確保每個頁面都調(diào)用session_start()、避免提前輸出內(nèi)容、檢查服務(wù)器上session存儲路徑可寫;5.使用ses

toAccessenvironmentVariablesInphp,useGetenv()或$ _envsuperglobal.1.getEnv('var_name')retievesSpecificvariable.2。 $ _ en v ['var_name'] accessesvariablesifvariables_orderInphp.iniincludes“ e” .setVariablesViaCliWithvar = vualitephpscript.php,inapach
