php中检测上传文件类型与上传图片大小代码

文章有二个实例是用来检测上传文件类型与上传图片大小,我本来想分开写但是觉得两个放一起会更好些,有需要的同学看看,代码如下:

  1. <?php
  2. /-----------------------------------------------------------------------------------
  3. // 函数名:CheckExtendName($C_filename,$A_extend)
  4. // 作 用:上传文件的扩展名判断
  5. // 参 数:$C_filename 上传的文件名
  6. // $A_extend 要求的扩展名
  7. // 返回值:布尔值
  8. // 备 注:无
  9. //-----------------------------------------------------------------------------------
  10. function CheckExtendName($C_filename,$A_extend)
  11. {
  12. if(strlen(trim($C_filename)) < 5)
  13. {
  14. return 0; //返回0表示没上传图片
  15. }
  16. $lastdot = strrpos($C_filename, "."); //取出.最后出现的位置
  17. //开源代码phpfensi.com
  18. $extended = substr($C_filename, $lastdot+1); //取出扩展名
  19. for($i=0;$i{
  20. if (trim(strtolower($extended)) == trim(strtolower($A_extend[$i]))) //转换大
  21. 小写并检测
  22. {
  23. $flag=1; //加成功标志
  24. $i=count($A_extend); //检测到了便停止检测
  25. }
  26. }
  27. if($flag<>1)
  28. {
  29. for($j=0;$j{
  30. $alarm .= $A_extend[$j]." ";
  31. }
  32. AlertExit('只能上传'.$alarm.'文件!而你上传的是'.$extended.'类型的文件');
  33. return -1; //返回-1表示上传图片的类型不符
  34. }
  35. return 1; //返回1表示图片的类型符合要求
  36. }
  37. //-----------------------------------------------------------------------------------
  38. // 函数名:CheckImageSize($ImageFileName,$LimitSize)
  39. // 作 用:检验上传图片的大小
  40. // 参 数:$ImageFileName 上传的图片名
  41. // $LimitSize 要求的尺寸
  42. // 返回值:布尔值
  43. // 备 注:无
  44. //-----------------------------------------------------------------------------------
  45. function CheckImageSize($ImageFileName,$LimitSize)
  46. {
  47. $size=GetImageSize($ImageFileName);
  48. if ($size[0]>$LimitSize[0] ││ $size[1]>$LimitSize[1])
  49. {
  50. AlertExit('图片尺寸过大');
  51. return false;
  52. }
  53. return true;
  54. }
  55. //-----------------------------------------------------------------------------------
  56. // 函数名:Alert($C_alert,$I_goback=0)
  57. // 作 用:非法操作警告
  58. // 参 数:$C_alert(提示的错误信息)
  59. // $I_goback(返回到那一页)
  60. // 返回值:字符串
  61. // 备 注:无
  62. //-----------------------------------------------------------------------------------
  63. function Alert($C_alert,$I_goback=0)
  64. {
  65. if($I_goback<>0)
  66. {
  67. echo " ";
  68. }
  69. else
  70. {
  71. echo " ";
  72. }
  73. }
  74. ?>