设为首页 收藏本站
查看: 991|回复: 0

[经验分享] PHP 通用检测函数集

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-8-23 15:33:49 | 显示全部楼层 |阅读模式
// ※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&lt;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;   
}   

?>
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-103071-1-1.html 上篇帖子: php生成图片缩略图,支持png透明 下篇帖子: IIS5和Tomcat6整合,实现IIS5支持ASP(.NET)+PHP+JSP
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表