PHP获取图片属性(size, width, 和 height)的函数

在PHP中,要获取图片的尺寸(宽度和高度),你可以使用 getimagesize() 函数。这个函数不仅返回图片的宽度和高度,还返回图片的类型和MIME类型等信息。

以下是 getimagesize() 函数的基本用法:

php 复制代码
<?php  
// 假设 $imagePath 是图片的完整路径  
$imagePath = 'path/to/your/image.jpg';  
  
// 使用 getimagesize() 获取图片信息  
$imageInfo = getimagesize($imagePath);  
  
if ($imageInfo !== false) {  
    // $imageInfo[0] 是图片的宽度  
    $width = $imageInfo[0];  
      
    // $imageInfo[1] 是图片的高度  
    $height = $imageInfo[1];  
      
    // $imageInfo['mime'] 是图片的MIME类型  
    $mime = $imageInfo['mime'];  
      
    // 输出图片的宽度和高度  
    echo "Width: " . $width . " pixels\n";  
    echo "Height: " . $height . " pixels\n";  
      
    // 你也可以使用其他返回的数组键来获取更多信息  
    // 例如,$imageInfo[2] 是图片的类型(1 = GIF, 2 = JPEG, 3 = PNG, ...)  
} else {  
    echo "Failed to retrieve image information.";  
}  
?>

注意,getimagesize() 函数还会检查文件是否是一个有效的图片文件,如果不是,它会返回 false。

关于图片的大小(size,即文件的字节数),你可以使用PHP的内置函数 filesize() 来获取:

php 复制代码
<?php  
// 假设 $imagePath 是图片的完整路径  
$imagePath = 'path/to/your/image.jpg';  
  
// 使用 filesize() 获取图片文件的大小(以字节为单位)  
$sizeInBytes = filesize($imagePath);  
  
if ($sizeInBytes !== false) {  
    // 将字节转换为更可读的格式(例如KB, MB)  
    $sizeInKB = $sizeInBytes / 1024;  
    $sizeInMB = $sizeInKB / 1024;  
      
    // 输出图片文件的大小  
    echo "Size: " . $sizeInBytes . " bytes\n";  
    echo "Size: " . $sizeInKB . " KB\n";  
    echo "Size: " . $sizeInMB . " MB\n";  
} else {  
    echo "Failed to retrieve file size.";  
}  
?>

结合这两个函数,你就可以获取到图片的尺寸和文件大小了。

相关推荐
白帽攻防录7 小时前
SRC 挖洞:PostScript 打印机驱动双 RCE,打印服务器怎么变成内网跳板
开发语言·网络安全·php·内网安全
聚美智数7 小时前
智能结构化识别-图片结构解析-图像结构化解析-照片结构化解析
android·java·数据库
xixiaoyunya8 小时前
Python 异步编程入门:用 asyncio 轻松实现并发任务
开发语言·python·php
mmsx12 小时前
Android 插件化架构:40 个 Gradle 模块的拆分、通信与共存
android·kotlin
mmsx12 小时前
Android 不改一行源码:用 AspectJ 做三类拦截
android·kotlin
TST-魚爷12 小时前
易视讯会议摄像头 + 全向麦克风实操讲解稿
android·电脑·钉钉·腾讯会议·zoom会议
嘟哩DuliDuli12 小时前
AI创作工作区的项目上下文与多模态任务边界
android·人工智能·安全·ai·软件工程
暖核12 小时前
kubeadm 集群运维:Worker 节点下线删除、整套集群销毁重建指南
运维·开发语言·php
imDwAaY14 小时前
MySQL 存储引擎是什么?
android·数据库·mysql
Meteors.15 小时前
Android Compose学习02:基础组件与 Modifier
android·学习