У меня есть следующая функция, которая извлекает изображение из ленты Twitter, параметр «url» получает URL-адрес, такой как:
'http://t.co/ilGWtpkV'
Поскольку это сокращенный URL-адрес, сценарий затемвозвращает местоположение этого URL:
http://www.facebook.com/photo.php?pid=1425727&l=1f2c2b6432&id=358116934207463
Затем скрипт анализирует html-содержимое этой страницы и возвращает источник элементов url по тегу.
Это рабочий примерскрипт: http://psuprob.herobo.com/pullmeme.php
В этом примере изображения сравниваются с записями с помощью метки времени с записями, существующими в базе данных, если нет записей с той же меткой времени, они добавляются,в противном случае это не так.
Эта функция используется:
getImages('http://t.co/ilGWtpkV');
function getImages($url) {
$url1 = $url;
require_once('../scripts/simple_html_dom.php');
require_once('../scripts/url_to_absolute.php');
$response = get_headers($url, 1);
//Get the location property of the first response header.
(returns: http://fb.me/1dnoCICkf)
$location = $response["Location"];
$url3 = $location;
$response2 = get_headers($url3,1);
//Get the location property of the second response header.
(returns: the full facebook url)
$location2 = $response2["Location"];
$url4 = $location2;
//image parser
if(isset($response2["Location"])) { //tests to make sure url is present
$html = file_get_html($url3); //function call to return page as html elements
foreach($html->find('img') as $element) { //finds every img as element
$bump = url_to_absolute($url4, $element->src); //converts src to absolute url
return $bump;
}
}
else {
echo "url is not valid (Probably not an image)";
}
}
Эта функция отлично работает на серверах 000webhost, однако на серверах godaddy она возвращает NULL.Любая помощь будет принята с благодарностью.