справка по функции php fetchpage(), определяющая размеры изображений по URL в php

#php

#php

Вопрос:

привет, ребята, итак, я создаю приложение, и одна из его функций — это возможность показывать ссылки на фотографии из встроенного Twitter, вроде того, что tweetdeck сделал в своей версии браузера Chrome, и сайты, подобные crowdreel, смогли сделать, я потратил некоторое время на изучение того, как извлекать теги изображений из URL-адресов в Google, и нашел этот фантастический скриптhttp://www.bitrepository.com/extract-images-from-an-url.html

скрипт великолепен и делает именно то, что мне нужно, однако теперь моя проблема заключается в том, что массив, возвращаемый из ссылок, возвращает каждое изображение на странице, включая миниатюры, объявления и т.д., Поэтому ссылка на страницу, подобную этой:http://lockerz.com/s/69901787

вернет массив с довольно большим количеством ссылок на изображения для сортировки, однако мне нужна ссылка на основное изображение, чтобы я мог отображать его в строке с твитами, моя идея заключается в том, что я запускаю какой-то код, чтобы выяснить, какое из изображений на странице самое большое? что вы думаете по этому поводу? правильный ли это метод или, возможно, есть что-то попроще, встроенное в php? спасибо за вашу помощь, ребята!

Ответ №1:

Как только у вас будут ссылки на изображения, вы можете передать их в функцию getimagesize() в PHP.

Посмотрите на этот пример: http://php.net/manual/en/function.getimagesize.php#example-2267

Комментарии:

1. аааа, это фантастика!!! хорошо, тогда последний вопрос заключается в том, какой наилучший способ сравнить размеры изображений, чтобы выяснить, какое из группы является самым большим? я уверен, что это то, чему я уже научился, но не могу думать об этом сразу, я предполагаю, что, возможно, один из методов сортировки? еще раз спасибо!

2. Рад, что помогли! Чтобы найти самое большое изображение, зависит от того, ищете ли вы изображение с наибольшей площадью или просто высотой или шириной.. В любом случае вы должны взять значения из индексных позиций 0 и 1 массива, которые возвращает getimagesize() для каждого изображения, поместить их в отдельные массивы ширины, высоты или площади и отсортировать их: php.net/manual/en/function.sort.php

3. getimagesize() однако вы загрузили бы все изображение целиком, а затем выбросили бы эти данные после получения спецификаций изображения. «Более дешевой» альтернативой было бы захватить только первые 512 байт изображения или около того и выполнить свой собственный синтаксический анализ для определения типа / размера из заголовка изображения.

4. интересно, но как бы я это сделал?