PHP通用检测函数集合


Posted in PHP onFebruary 08, 2011

// ※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 相关文章推荐
用php过滤危险html代码的函数
Jul 22 PHP
第三章 php操作符与控制结构代码
Dec 30 PHP
ThinkPHP关联模型操作实例分析
Sep 23 PHP
基于curl数据采集之正则处理函数get_matches的使用
Apr 28 PHP
PHP错误WARNING: SESSION_START() [FUNCTION.SESSION-START]解决方法
May 04 PHP
PHP微信开发之二维码生成类
Jun 26 PHP
php中二维数组排序问题方法详解
Aug 28 PHP
使用ltrace工具跟踪PHP库函数调用的方法
Apr 25 PHP
浅谈PHP eval()函数定义和用法
Jun 21 PHP
php实现数字补零的方法总结
Sep 12 PHP
php设计模式之迭代器模式实例分析【星际争霸游戏案例】
Apr 07 PHP
PHP操作Redis常用命令的实例详解
Dec 23 PHP
.htaccess文件保护实例讲解
Feb 06 #PHP
延长phpmyadmin登录时间的方法
Feb 06 #PHP
PHP开发中的错误收集,不定期更新。
Feb 03 #PHP
一些php技巧与注意事项分析
Feb 03 #PHP
PHP数组对比函数,存在交集则返回真,否则返回假
Feb 03 #PHP
用PHP读取和编写XML DOM的实现代码
Feb 03 #PHP
javascript,php获取函数参数对象的代码
Feb 03 #PHP
You might like
用C/C++扩展你的PHP 为你的php增加功能
2012/09/06 PHP
php常用字符串处理函数实例分析
2014/11/22 PHP
thinkphp的URL路由规则与配置实例
2014/11/26 PHP
jQuery下通过replace字符串替换实现大小图片切换
2012/05/22 Javascript
js 输出内容到新窗口具体实现代码
2013/05/31 Javascript
nodejs npm package.json中文文档
2014/09/04 NodeJs
js实现类似于add(1)(2)(3)调用方式的方法
2015/03/04 Javascript
jquery获取url参数及url加参数的方法
2015/10/26 Javascript
jquery实现简易的移动端验证表单
2015/11/08 Javascript
js智能获取浏览器版本UA信息的方法
2016/08/08 Javascript
纯js和css完成贪吃蛇小游戏demo
2016/09/01 Javascript
jQuery+正则+文本框只能输入数字的实现方法
2016/10/07 Javascript
利用angular.copy取消变量的双向绑定与解析
2016/11/25 Javascript
jQuery实现一个简单的轮播图
2017/02/19 Javascript
JavaScript评论点赞功能的实现方法
2017/03/13 Javascript
JS正则表达式完美实现身份证校验功能
2017/10/18 Javascript
基于Vue2.X的路由和钩子函数详解
2018/02/09 Javascript
JavaScript分步实现一个出生日期的正则表达式
2018/03/22 Javascript
实例详解BootStrap的动态模态框及静态模态框
2018/08/13 Javascript
小程序视频或音频自定义可拖拽进度条的示例代码
2018/09/30 Javascript
element-ui 弹窗组件封装的步骤
2021/01/22 Javascript
python进阶教程之词典、字典、dict
2014/08/29 Python
Python多线程、异步+多进程爬虫实现代码
2016/02/17 Python
Python获取本机所有网卡ip,掩码和广播地址实例代码
2018/01/22 Python
查看python下OpenCV版本的方法
2018/08/03 Python
python抓取网页内容并进行语音播报的方法
2018/12/24 Python
Puppeteer使用示例详解
2019/06/20 Python
python内存监控工具memory_profiler和guppy的用法详解
2019/07/29 Python
在python中创建指定大小的多维数组方式
2019/11/28 Python
python+pygame实现坦克大战小游戏的示例代码(可以自定义子弹速度)
2020/08/11 Python
Blancsom美国/加拿大:服装和生活用品供应商
2018/07/27 全球购物
Java语言程序设计测试题选择题部分
2014/04/03 面试题
结婚典礼证婚词
2014/01/08 职场文书
国贸专业大学生职业生涯规划范文
2014/01/10 职场文书
莫言诺贝尔获奖演讲稿
2014/05/21 职场文书
《合作意向书》怎么写?
2019/08/20 职场文书