Делаем domdocument img search более легким
Он захватывает все изображения со страницы и должен проверить, имеет ли изображение большую ширину и высоту, чем 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++;
}
}
}
}
1 ответ
Решение
PingImage или pingImageFile в ImageMagick будут считывать как можно меньше файла изображения, чтобы получить основные атрибуты, к которым затем можно получить доступ, используя getImageWidth
а также getImageHeight
,