banner
李大仁博客

李大仁博客

天地虽大,但有一念向善,心存良知,虽凡夫俗子,皆可为圣贤。

PHP4/5用通用檢測函數的打包大集合,適合表單,資料庫

相信各位 PHPer 現在一直還在找到一個好的 PHP 檢測函數庫犯愁吧,以下是本人目前編程使用通用檢測函數的集合,來源於中國著名的開源社區,這個就不說了吧原作者天灰,先感謝一下,本人對他的源代碼進行了部分修改,以適合自己開發需要,天灰的網址是找不到了,不知道是否是改名了

PHP4,PHP5 下有效,需要的話歡迎收藏,轉載

php 通用檢測函數集合
// ※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 函數

// 函數名: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;
}

// 函數名: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;

}

// 函數名: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($flag<>1)
{
for($j=0;$j
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 "

";
}
}

// 函數名: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); // 替換空格替換為
$c_char=str_replace("
// 函數名: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;
}
?>

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。