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.";  
}  
?>

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

相关推荐
tangweiguo030519871 小时前
ProcessLifecycleOwner 完全指南:优雅监听应用前后台状态
android·kotlin
介一安全2 小时前
【Frida Android】基础篇15(完):Frida-Trace 基础应用——JNI 函数 Hook
android·网络安全·ida·逆向·frida
吞掉星星的鲸鱼2 小时前
android studio创建使用开发打包教程
android·ide·android studio
陈老师还在写代码2 小时前
android studio 签名打包教程
android·ide·android studio
csj502 小时前
android studio设置
android
hifhf2 小时前
Android Studio gradle下载失败报错
android·ide·android studio
正经教主2 小时前
【问题】Android Studio 2025版本汉化错误:invalid plugin descriptor
android studio·intellij-idea·汉化
陈老师还在写代码2 小时前
android studio,java 语言。新建了项目,在哪儿设置 app 的名字和 logo。
android·java·android studio
2501_916007475 小时前
Fastlane 结合 开心上架(Appuploader)命令行实现跨平台上传发布 iOS App 的完整方案
android·ios·小程序·https·uni-app·iphone·webview
listhi5206 小时前
Vue.js 3的组合式API
android·vue.js·flutter