对纵向和横向图像进行排序


Sorting portrait and landscape images

是否可以使用PHP对图像数组进行排序。

例如,我有一个混合了风景和肖像图像的阵列。纵向宽度为140,横向宽度为280。

我想创建一个函数,检查位置1是否为纵向,位置2是否为横向,然后位置3必须为纵向,以防止画廊中出现间隙。

使用getimagesize检查纵向或横向

PHP代码:

$size = getimagesize($filename); 
$width = $size[0]; 
$height = $size[1]; 
$aspect = $height / $width; 
if ($aspect >= 1) $mode = "vertical"; 
else $mode = "horizontal";  

如果您想获得GD图像资源的维度,而不是图像文件的维度,请使用this而不是getimagesize():

PHP代码:

$width = imagesx($img); 
$height = imagesy($img); 

最后,将其实现到您的代码中,并只执行所需的排序

我不明白你为什么不能。使用类似getimagesize()的方法查询数组中每个图片的图像大小。

一旦你有了每个图像的宽度,排序应该很简单。