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 " ";
}
}
?>
热文精选
更多资讯推荐
更多- Stable Diffusion 2.0 发布,加强成人内容过滤
- .NET 7 正式发布
- A3Mall 开源商城系统 v2.1 发布
- FydeOS v14 版本更新:优化输入法体验+重构安卓子系统+全新应用启动器
- ThinkPHP V6.0.8版本发布——多环境变量配置支持
- 毕昇 JDK 8u292、11.0.11 发布!
- KubeVela 1.0:开启可编程式应用平台的未来
- Eclipse 4.19 稳定版发布
- 阿里巴巴 Arthas 3.5.0 版本发布,支持反编译打印行号和统一鉴权
- Debian 11 Bullseye 即将进入冻结,Debian 13 代号 Trixie
- Rancher 2.5 发布,新增支持边缘集群的 GitOps
- FlashDB IoT 超轻量级嵌入式数据库