相信诸位PHPer现在一直还在找到一个好的PHP检测函数库犯愁吧,以下是本人目前编程使用通用检测函数的集合,来源于中国著名的开源社区,是什么不要说了吧原作者天灰,先感谢一下,本人对他的源代码进行了部分修改,以适合自己开发需要,天灰的网址是找不到了,不知道是否是改名了
PHP4,PHP5下有效,需要的话欢迎收藏,转载
php通用检测函数集合< br/>// 【作 用】: 通用检测函数集// 【作 者】: 天灰// 【修 改】: CG//// 【最后修改日期】: 2008/10/10// 【变量定义规则】:‘c_’=字符型,‘i_’=整型,‘n_’=数字型,‘l_’=布尔型,‘a_’=数组型// ※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_len return falsebr>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_var 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 br>{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 "";
}
}
// 函数名: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("< c_char phpbr/>
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 br>
{
$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;
}
?>
--------------------------------------------------------------------------------------
- 版权声明:
- 如在本页面内无特别说明,本文内容均为[李大仁博客]原创,本文版权归[李大仁博客]所有。
- 欢迎转载,转载请务必在文章页面明显位置提供原文链接并注明出处。欢迎您在转载本文时保留本段声明。
- 文章标题:
[分享]PHP4、5用通用检测函数的打包大集合,适合表单,数据库
- 独立博客:
李大仁博客
- 永久链接:http://www.lidaren.com/archives/138
--------------------------------------------------------------------------------------
以上内容由博客自动发布工具自动发布,最终显示内容和效果会与原文内容有所偏差,敬请谅解。
转载请注明原文地址: https://ju.6miu.com/read-1307573.html