这会抓取页面中的所有图像,并且应该检查图像的宽度和高度是否超过200.如果是,请抓住第一个图像。但它是一个昂贵的过程,我想知道是否有更多的轻量级方法,而不是使用getimagesize。有没有人知道不使用YQL等外部服务的不同方法?
if($ogimage!=''|| !empty($ogimage)){
$arrimg = $ogimage;
} else {
$imgarr = array();
foreach ($doc->getElementsByTagName('img') as $img) {
$arrimg_push = $img->getAttribute('src');
array_push($imgarr, $arrimg_push);
}
$i=0;
foreach($imgarr as $img){
list($width, $height, $type, $attr) = getimagesize($img);
if($width > 200 && $height > 200){
if($i > 0){
$arrimg = $img;
$i++;
}
}
}
}
答案 0 :(得分:1)
ImageMagick pingImage or pingImageFile将尽可能少地读取图像文件以获取基本属性,然后可以使用getImageWidth
和getImageHeight
来访问这些属性。