PHP Conference Japan 2024

Imagick::pingImage

(PECL imagick 2, PECL imagick 3)

Imagick::pingImage获取图像的基本属性

描述

public Imagick::pingImage(string $filename): bool

此方法可用于查询图像宽度、高度、大小和格式,无需将整个图像读入内存。

参数

filename

从中读取信息的文件名。

返回值

成功时返回 true

添加注释

用户贡献的注释 2 条注释

hello at digitalnature dot eu
11 年前
警告:如果您只想获取图像宽度和高度,请不要使用 Eero Niemi 的代码(使用 pingImage 进行 identifyImage),因为它实际上比将整个图像读入内存慢约 10 倍!

正确的代码应该是

<?php

$image
= new Imagick();
$image->pingImage($file);
$width = $image->getImageWidth();
$height = $image->getImageHeight();

?>

(这比将图像读入内存快大约 15 倍)
Sergey
12 年前
如果您不确定文件是否存在或文件是否损坏,则应使用 try-catch 结构。当代码在调用 pingImage 后停止执行(如果文件不存在或损坏)时,它可以防止代码失败。

<?php
$im
= new Imagick();
try {
$im->pingImage('3.jpg');
}
catch(
ImagickException $e) {
echo
"image doesn't exist";
}
?>
To Top