在开发过程中,上传图片的基本都这功能的,但是呢客户都是随便上传,不会根据你的指定的需求上传的,这时客户按照我们指定的图片尺寸或文件大小上传,做限制。

如下代码,我已经封装号了,可以直接拿来用。

/*** @param $width 宽度* @param $height 高度* @param $size 文件大小 k为单位* @param $path 文件绝对路径* @return bool true or false*/
function getImgSize($width,$height,$size,$path){if (!$width || !$height || !$size || !$path){return true;}$imgRes = getimagesize($path);$imgSize = ceil(filesize($path) / 1000) . "k"; //获取文件大小if ($width != $imgRes[0] || $height != $imgRes[1] || $imgSize > $imgSize){clearstatcache();return true;}return false;
}

只要用到的知识,就是getimagesize函数 和 filesize 函数

getimagesize() 函数用于获取图像大小及相关信息,成功返回一个数组,失败则返回 FALSE 并产生一条 E_WARNING 级的错误信息。

语法格式:

array getimagesize ( string $filename [, array &$imageinfo ] )

注意:$filename 可以本地路径 也 可以上网络路径

getimagesize() 函数将测定任何 GIF,JPG,PNG,SWF,SWC,PSD,TIFF,BMP,IFF,JP2,JPX,JB2,JPC,XBM 或 WBMP 图像文件的大小并返回图像的尺寸以及文件类型及图片高度与宽度。

案例

$array = getimagesize("images/flower_1.jpg");
print_r($array);
Array
([0] => 300[1] => 69[2] => 3[3] => width="300" height="69"[bits] => 8[mime] => image/jpeg
)

返回结果说明

  • 索引 0 给出的是图像宽度的像素值
  • 索引 1 给出的是图像高度的像素值
  • 索引 2 给出的是图像的类型,返回的是数字,其中1 = GIF,2 = JPG,3 = PNG,4 = SWF,5 = PSD,6 = BMP,7 = TIFF(intel byte order),8 = TIFF(motorola byte order),9 = JPC,10 = JP2,11 = JPX,12 = JB2,13 = SWC,14 = IFF,15 = WBMP,16 = XBM
  • 索引 3 给出的是一个宽度和高度的字符串,可以直接用于 HTML 的 <image> 标签
  • 索引 bits 给出的是图像的每种颜色的位数,二进制格式
  • 索引 channels 给出的是图像的通道值,RGB 图像默认是 3
  • 索引 mime 给出的是图像的 MIME 信息,此信息可以用来在 HTTP Content-type 头信息中发送正确的信息,如: header("Content-type: image/jpeg");

filesize() 函数返回指定文件的大小。

若成功,则返回文件大小的字节数。若失败,则返回 false 并生成一条 E_WARNING 级的错误。

语法

filesize(filename)

注意:filesize 会有些偏差

上传图片限制文件大小以及尺寸大小 php相关推荐

  1. 5分钟学会js上传图片校验图片格式、大小、尺寸宽高

    js上传图片校验图片格式.大小.尺寸宽高 一.前言        js上传图片校验图片格式.大小.尺寸宽高.        在此记录下,分享给大家. 二.代码 <input type=" ...

  2. html 图片比例 js,js自动等比例设置图片尺寸大小

    css 图片等比例缩放 首页产品展示的图片都变形了,客户要求图片等比例大小,和产品展示的效果一样: css控制图. 网站的内容页面,经常要放图片,如果图片太大会撑出,影响页面美观. > HTML ...

  3. 怎么更改图片的尺寸?照片尺寸大小怎么改?

    ​平时在社交网站中上传图片的时候,经常遇到图片尺寸不符合要求的情况,这就需要用到图片改大小(https://www.yasuotu.com/size)工具来修改图片尺寸,今天分享一款图片编辑器,可以在 ...

  4. 怎么修改图片尺寸大小?图片改大小用什么软件?

    怎么修改图片尺寸大小?可以使用压缩啦的图片改大小(图片改大小 在线修改照片大小 图片修改大小工具-压缩啦)工具,不用下载安装就可以在线图片修改,一起来看看怎么操作吧. 1.进入压缩啦点击图片改大小. ...

  5. 怎样改变图片尺寸大小不变形?如何设置图片尺寸?

    怎样改变图片尺寸大小不变形?想要快速完成图片尺寸大小修改,给大家分享一下在线快速图片改大小的操作技巧,使用图片在线编辑工具,即可调整图片大小. 1.上传图片. 2.选择尺寸或自定义宽高,压缩等级输入参 ...

  6. 上传图片前限制图片比例大小格式

    上传图片前限制图片比例&大小&格式 一下代码适用于element-ui的upload: 使用上传图片之前的before-upload钩子函数,举个例子:限制图片尺寸大小为200px*2 ...

  7. 怎么用电脑在线改变照片尺寸大小?这款工具可以试试看

    小伙伴应该都有这样的经历,当使用证件照的时候,发现证件照尺寸不符合上传需求,大家是怎么处理的呢?这不,前几日小编考试报名需要上传证件照时发现尺寸不合适,该怎么修改图片尺寸大小,才能使它符合考试相应证件 ...

  8. 图像分辨率、像素和宽高比有什么区别?如何在线修改图片尺寸大小?

    我们生活中总会遇到各种各样关于图片的名词,比如图像分辨率.像素.宽高比,那么这些词语都是什么意思呢,我们在修改图片尺寸大小的时候究竟应该修改哪个维度的尺寸?在修改图片尺寸前该如何选择合适的图片尺寸?如 ...

  9. html的区域大小,JavaScript位置与大小(1)之正确理解和运用与尺寸大小相关的DOM属性...

    在web开发中,不可避免遇到要计算元素大小以及位置的问题,解决这类问题的方法是利用DOM提供的一些API结合兼容性处理来,所有内容大概分3篇左右的文章的来说明.本文作为第一篇,介绍DOM提供的与尺寸大 ...

最新文章

  1. window mysql安全设置_mysql安全配置方案
  2. 2016全球教育机器人发展白皮书
  3. 从pymongo 提取最近100条数据
  4. 直流(DC)跟交流射频(RF)的电场构成
  5. ASP.NET 安全认证(三)—— 用Form 表单认证实现单点登录(Single Sign On) .
  6. 网络学习(十二)文本模式安装Red Hat Linux 9
  7. 【OpenCV 例程200篇】69. 连续非周期信号的傅立叶系数
  8. 50T内存?百万机时?头一次见这么耗费内存和机时的分析?
  9. 苹果正式推送iPadOS 13.1、iOS 13.1,修复大量Bug,速升!
  10. 引用css样式时,一个class引用两个样式的写法( class=ico001 icoCom)。
  11. c语言if怎么结束_07if与循环案例超经典C语言
  12. freeswitch的使用
  13. R语言 | 计算基因表达量 TPM R脚本
  14. 八大基本数据类型(primitive type)
  15. 低功耗蓝牙(BLE)-- advertisements广播篇
  16. 嵌入式 C 语言中三块难啃的硬骨头
  17. web前端开发入门十个小项目(Hbuilder)
  18. QTableView根据内容自动调整大小(resizeColumnToContents解决不了的)
  19. everything插件的安装
  20. Java实现对数字进行加密

热门文章

  1. 桌游“德国心脏病”的C语言代码实现
  2. 小学计算机六年级下教学计划,人教版小学六年级下册信息技术教学计划范文(通用3篇)...
  3. 计算机维修耗材管理,中国建设银行驻马店分行计算机耗材管理办法.doc
  4. CentOs中安装并运行rocketmq(报错 ignoring input and appending output to ‘nohup.out’;jps: command not found)
  5. 红帽子认证辅导教程(转)
  6. php 输出时区,PHP 输出的各个时区对应的时差表
  7. 计算机英语mdd,mdd指令9342eec(中英文对照版最终版)(79页)-原创力文档
  8. 名悦集团:新能源汽车保养做好这三步,用车无忧
  9. 学成在线--day04 页面静态化
  10. 需求调研报告模板_2020年全球TAC薄膜行业市场现状调研报告-国内需求增速超世界水平...