php中检测上传文件类型与上传图片大小代码
文章有二个实例是用来检测上传文件类型与上传图片大小,我本来想分开写但是觉得两个放一起会更好些,有需要的同学看看,代码如下:
- <?php
- /-----------------------------------------------------------------------------------
- // 函数名: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, "."); //取出.最后出现的位置
- //开源代码phpfensi.com
- $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 " ";
- }
- }
- ?>