// ※CheckMoney($C_Money) 检查数据是否是99999.99格式// ※CheckEmailAddr($C_mailaddr) 判断是否为有效邮件地址// ※CheckWebAddr($C_weburl) 判断是否为有效网址// ※CheckEmpty($C_char) 判断字符串是否为空// ※CheckLengthBetween($C_char, $I_len1, $I_len2=100) 判断是否为指定长度内字符串// ※CheckUser($C_user) 判断是否为合法用户名// ※CheckPassword($C_passwd) 判断是否为合法用户密码// ※CheckTelephone($C_telephone) 判断是否为合法电话号码// ※CheckValueBetween($N_var, $N_val1, $N_val2) 判断是否是某一范围内的合法值// ※CheckPost($C_post) 判断是否为合法邮编(固定长度)// ※CheckExtendName($C_filename,$A_extend) 判断上传文件的扩展名// ※CheckImageSize($ImageFileName,$LimitSize) 检验上传图片的大小// ※AlertExit($C_alert,$I_goback=0) 非法操作警告并退出// ※Alert($C_alert,$I_goback=0) 非法操作警告// ※ReplaceSpacialChar($C_char) 特殊字符替换函数// ※ExchangeMoney($N_money) 资金转换函数// ※WindowLocation($C_url,$C_get="",$C_getOther="") PHP中的window.location函数< ?php // 函数名:CheckMoney($C_Money) // 作 用:检查数据是否是99999.99格式 // 参 数:$C_Money(待检测的数字) // 返回值:布尔值 // 备 注:无 //----------------------------------------------------------------------------------- function CheckMoney($C_Money) { if (!ereg("^[0-9][.][0-9]$", $C_Money)) return false; return true; } //----------------------------------------------------------------------------------- // 函数名:CheckEmailAddr($C_mailaddr) // 作 用:判断是否为有效邮件地址 // 参 数:$C_mailaddr(待检测的邮件地址) // 返回值:布尔值 // 备 注:无 //----------------------------------------------------------------------------------- function CheckEmailAddr($C_mailaddr) { if (!eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*$", $C_mailaddr)) //(!ereg("^[_a-zA-Z0-9-]+(.[_a-zA-Z0-9-]+)*@[_a-zA-Z0-9-]+(.[_a-zA-Z0-9-]+)*$", $c_mailaddr)) { return false; } return true; } //----------------------------------------------------------------------------------- // 函数名:CheckWebAddr($C_weburl) // 作 用:判断是否为有效网址 // 参 数:$C_weburl(待检测的网址) // 返回值:布尔值 // 备 注:无 //----------------------------------------------------------------------------------- function CheckWebAddr($C_weburl) { if (!ereg("^http://[_a-zA-Z0-9-]+(.[_a-zA-Z0-9-]+)*$", $C_weburl)) { return false; } return true; } //----------------------------------------------------------------------------------- // 函数名:CheckEmpty($C_char) // 作 用:判断字符串是否为空 // 参 数:$C_char(待检测的字符串) // 返回值:布尔值 // 备 注:无 //----------------------------------------------------------------------------------- function CheckEmptyString($C_char) { if (!is_string($C_char)) return false; //是否是字符串类型 if (empty($C_char)) return false; //是否已设定 if ($C_char=='') return false; //是否为空 return true; } //----------------------------------------------------------------------------------- // 函数名:CheckLengthBetween($C_char, $I_len1, $I_len2=100) // 作 用:判断是否为指定长度内字符串 // 参 数:$C_char(待检测的字符串) // $I_len1 (目标字符串长度的下限) // $I_len2 (目标字符串长度的上限) // 返回值:布尔值 // 备 注:无 //----------------------------------------------------------------------------------- function CheckLengthBetween($C_cahr, $I_len1, $I_len2=100) { $C_cahr = trim($C_cahr); if (strlen($C_cahr) < $I_len1) return false; if (strlen($C_cahr) > $I_len2) return false; return true; } //----------------------------------------------------------------------------------- // 函数名:CheckUser($C_user) // 作 用:判断是否为合法用户名 // 参 数:$C_user(待检测的用户名) // 返回值:布尔值 // 备 注:无 //----------------------------------------------------------------------------------- function CheckUser($C_user) { if (!CheckLengthBetween($C_user, 4, 20)) return false; //宽度检验 if (!ereg("^[_a-zA-Z0-9]*$", $C_user)) return false; //特殊字符检验 return true; } ?> < ?php // 函数名:CheckPassword($C_passwd) // 作 用:判断是否为合法用户密码 // 参 数:$C_passwd(待检测的密码) // 返回值:布尔值 // 备 注:无 //----------------------------------------------------------------------------------- function CheckPassword($C_passwd) { if (!CheckLengthBetween($C_passwd, 4, 20)) return false; //宽度检测 if (!ereg("^[_a-zA-Z0-9]*$", $C_passwd)) return false; //特殊字符检测 return true; } //----------------------------------------------------------------------------------- // 函数名:CheckTelephone($C_telephone) // 作 用:判断是否为合法电话号码 // 参 数:$C_telephone(待检测的电话号码) // 返回值:布尔值 // 备 注:无 //----------------------------------------------------------------------------------- function CheckTelephone($C_telephone) { if (!ereg("^[+]?[0-9]+([xX-][0-9]+)*$", $C_telephone)) return false; return true; } //----------------------------------------------------------------------------------- // 函数名:CheckValueBetween($N_var, $N_val1, $N_val2) // 作 用:判断是否是某一范围内的合法值 // 参 数:$N_var 待检测的值 // $N_var1 待检测值的上限 // $N_var2 待检测值的下限 // 返回值:布尔值 // 备 注:无 //----------------------------------------------------------------------------------- function CheckValueBetween($N_var, $N_val1, $N_val2) { if ($N_var < $N_var1 ││ $N_var > $N_var2) { return false; } return true; } ?> < ?php // 函数名:CheckPost($C_post) // 作 用:判断是否为合法邮编(固定长度) // 参 数:$C_post(待check的邮政编码) // 返回值:布尔值 // 备 注:无 //----------------------------------------------------------------------------------- function CheckPost($C_post) { $C_post=trim($C_post); if (strlen($C_post) == 6) { if(!ereg("^[+]?[_0-9]*$",$C_post)) { return true;; }else { return false; } }else { return false;; } } //----------------------------------------------------------------------------------- // 函数名:CheckExtendName($C_filename,$A_extend) // 作 用:上传文件的扩展名判断 // 参 数:$C_filename 上传的文件名 // $A_extend 要求的扩展名 // 返回值:布尔值 // 备 注:无 //----------------------------------------------------------------------------------- function CheckExtendName($C_filename,$A_extend) { if(strlen(trim($C_filename)) < 5) { return 0; //返回0表示没上传图片 } $lastdot = strrpos($C_filename, "."); //取出.最后出现的位置 $extended = substr($C_filename, $lastdot+1); //取出扩展名 for($i=0;$i{ if (trim(strtolower($extended)) == trim(strtolower($A_extend[$i]))) //转换大 小写并检测 { $flag=1; //加成功标志 $i=count($A_extend); //检测到了便停止检测 } } if($flag<>1) { for($j=0;$j{ $alarm .= $A_extend[$j]." "; } AlertExit('只能上传'.$alarm.'文件!而你上传的是'.$extended.'类型的文件'); return -1; //返回-1表示上传图片的类型不符 } return 1; //返回1表示图片的类型符合要求 } //----------------------------------------------------------------------------------- // 函数名:CheckImageSize($ImageFileName,$LimitSize) // 作 用:检验上传图片的大小 // 参 数:$ImageFileName 上传的图片名 // $LimitSize 要求的尺寸 // 返回值:布尔值 // 备 注:无 //----------------------------------------------------------------------------------- function CheckImageSize($ImageFileName,$LimitSize) { $size=GetImageSize($ImageFileName); if ($size[0]>$LimitSize[0] ││ $size[1]>$LimitSize[1]) { AlertExit('图片尺寸过大'); return false; } return true; } //----------------------------------------------------------------------------------- // 函数名:Alert($C_alert,$I_goback=0) // 作 用:非法操作警告 // 参 数:$C_alert(提示的错误信息) // $I_goback(返回到那一页) // 返回值:字符串 // 备 注:无 //----------------------------------------------------------------------------------- function Alert($C_alert,$I_goback=0) { if($I_goback<>0) { echo " "; } else { echo " "; } } ?> < ?php // 函数名:AlertExit($C_alert,$I_goback=0) // 作 用:非法操作警告 // 参 数:$C_alert(提示的错误信息) // $I_goback(返回到那一页) // 返回值:字符串 // 备 注:无 //----------------------------------------------------------------------------------- function AlertExit($C_alert,$I_goback=0) { if($I_goback<>0) { echo " "; exit; } else { echo " "; exit; } } //----------------------------------------------------------------------------------- // 函数名:ReplaceSpacialChar($C_char) // 作 用:特殊字符替换函数 // 参 数:$C_char(待替换的字符串) // 返回值:字符串 // 备 注:这个函数有问题,需要测试才能使用//----------------------------------------------------------------------------------- function ReplaceSpecialChar($C_char) { $C_char=HTMLSpecialChars($C_char); //将特殊字元转成 HTML 格式。 $C_char=nl2br($C_char); //将回车替换为 $C_char=str_replace(" "," ",$C_char); //替换空格为 return $C_char; } //----------------------------------------------------------------------------------- // 函数名:ExchangeMoney($N_money) // 作 用:资金转换函数 // 参 数:$N_money(待转换的金额数字) // 返回值:字符串 // 备 注:本函数示例:$char=ExchangeMoney(5645132.3155) ==> $char='¥5,645,132.31' //----------------------------------------------------------------------------------- function ExchangeMoney($N_money) { $A_tmp=explode(".",$N_money ); //将数字按小数点分成两部分,并存入数组$A_tmp $I_len=strlen($A_tmp[0]); //测出小数点前面位数的宽度 if($I_len%3==0) { $I_step=$I_len/3; //如前面位数的宽度mod 3 = 0 ,可按,分成$I_step 部分 }else { $step=($len-$len%3)/3+1; //如前面位数的宽度mod 3 != 0 ,可按,分成$I_step 部分+1 } $C_cur=""; //对小数点以前的金额数字进行转换 while($I_len<>0) { $I_step--; if($I_step==0) { $C_cur .= substr($A_tmp[0],0,$I_len-($I_step)*3); }else { $C_cur .= substr($A_tmp[0],0,$I_len-($I_step)*3).","; } $A_tmp[0]=substr($A_tmp[0],$I_len-($I_step)*3); $I_len=strlen($A_tmp[0]); } //对小数点后面的金额的进行转换 if($A_tmp[1]=="") { $C_cur .= ".00"; }else { $I_len=strlen($A_tmp[1]); if($I_len<2) { $C_cur .= ".".$A_tmp[1]."0"; }else { $C_cur .= ".".substr($A_tmp[1],0,2); } } //加上人民币符号并传出 $C_cur="¥".$C_cur; return $C_cur; } //----------------------------------------------------------------------------------- // 函数名:WindowLocation($C_url,$C_get="",$C_getOther="") // 作 用:PHP中的window.location函数 // 参 数:$C_url 转向窗口的URL // $C_get GET方法参数 // $C_getOther GET方法的其他参数 // 返回值: 字符串 // 备 注:无 //----------------------------------------------------------------------------------- function WindowLocation($C_url,$C_get="",$C_getOther="") { if($C_get == "" && $C_getOther == "") if($C_get == "" && $C_getOther <> ""){$C_target=""window.location='$C_url? $C_getOther='+this.value"";} if($C_get <> "" && $C_getOther == ""){$C_target=""window.location='$C_url? $C_get'"";} if($C_get <> "" && $C_getOther <> ""){$C_target=""window.location='$C_url? $C_get&$C_getOther='+this.value"";} return $C_target; } ?>

在PHP中,trait適用於需要方法復用但不適合使用繼承的情況。 1)trait允許在類中復用方法,避免多重繼承複雜性。 2)使用trait時需注意方法衝突,可通過insteadof和as關鍵字解決。 3)應避免過度使用trait,保持其單一職責,以優化性能和提高代碼可維護性。

依賴注入容器(DIC)是一種管理和提供對象依賴關係的工具,用於PHP項目中。 DIC的主要好處包括:1.解耦,使組件獨立,代碼易維護和測試;2.靈活性,易替換或修改依賴關係;3.可測試性,方便注入mock對象進行單元測試。

SplFixedArray在PHP中是一種固定大小的數組,適用於需要高性能和低內存使用量的場景。 1)它在創建時需指定大小,避免動態調整帶來的開銷。 2)基於C語言數組,直接操作內存,訪問速度快。 3)適合大規模數據處理和內存敏感環境,但需謹慎使用,因其大小固定。

PHP通過$\_FILES變量處理文件上傳,確保安全性的方法包括:1.檢查上傳錯誤,2.驗證文件類型和大小,3.防止文件覆蓋,4.移動文件到永久存儲位置。

JavaScript中處理空值可以使用NullCoalescingOperator(??)和NullCoalescingAssignmentOperator(??=)。 1.??返回第一個非null或非undefined的操作數。 2.??=將變量賦值為右操作數的值,但前提是該變量為null或undefined。這些操作符簡化了代碼邏輯,提高了可讀性和性能。

CSP重要因為它能防範XSS攻擊和限制資源加載,提升網站安全性。 1.CSP是HTTP響應頭的一部分,通過嚴格策略限制惡意行為。 2.基本用法是只允許從同源加載資源。 3.高級用法可設置更細粒度的策略,如允許特定域名加載腳本和样式。 4.使用Content-Security-Policy-Report-Only頭部可調試和優化CSP策略。

HTTP請求方法包括GET、POST、PUT和DELETE,分別用於獲取、提交、更新和刪除資源。 1.GET方法用於獲取資源,適用於讀取操作。 2.POST方法用於提交數據,常用於創建新資源。 3.PUT方法用於更新資源,適用於完整更新。 4.DELETE方法用於刪除資源,適用於刪除操作。

HTTPS是一種在HTTP基礎上增加安全層的協議,主要通過加密數據保護用戶隱私和數據安全。其工作原理包括TLS握手、證書驗證和加密通信。實現HTTPS時需注意證書管理、性能影響和混合內容問題。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

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

Dreamweaver CS6
視覺化網頁開發工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

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