Phi*_*lip 3 php height image width
是否可以在不使用PHP加载实际图像的情况下获取图像信息?在我的情况下,我想要高度和宽度.
我有这个代码从目录中获取图像.我回显了图像的url并用JS获取它.
<?php
$directory = "./images/photos/";
$sub_dirs = glob($directory . "*");
$i = 0;
$len = count($sub_dirs);
foreach($sub_dirs as $sub_dir)
{
$images = glob($sub_dir . '/*.jpg');
$j = 0;
$len_b = count($images);
foreach ($images as $image)
{
if ($j == $len_b - 1) {
echo $image;
} else {
echo $image . "|";
}
$j++;
}
if ($i == $len - 1) {
} else {
echo "|";
}
$i++;
}
?>
Run Code Online (Sandbox Code Playgroud)
getImageSize() 是在PHP中获取此信息的正确方法
它根据图像类型进行最少量的工作.例如,GIF图像的高度/宽度存储在标题中.非常容易访问和阅读.所以这就是函数最有可能从文件中获取信息的方式.对于JPEG,它需要使用SOFn标记做更多的工作.
访问此信息的最快方法是每次上传新文件时维护文件维度数据库.
鉴于你目前的情况.我建议编写一个PHP脚本来获取所有当前的图像文件,使用此函数获取大小,然后将信息插入数据库以备将来使用.
这取决于你的意思是"不加载它".
内置的getimagesize()可以做到这一点.
list($w, $h) = getimagesize($filename);
Run Code Online (Sandbox Code Playgroud)