Как отметил @Gordon в комментарии, twitpic, похоже, имеет API - который вы должны использовать для такого рода вещей.
См .: http://dev.twitpic.com/
Теперь, вот старый ответ - забавная, но не очень хорошая идея, учитывая, что есть API:
URL-адрес, который у вас есть, не является URL-адресом самого изображения: это URL-адрес HTML-страницы, на которой отображается изображение, в теге <img>
.
Итак, вам нужнодействовать в два этапа:
- Сначала загрузите эту страницу и извлеките URL-адрес тега
<img>
. - Затем, когда у вас есть URL изображения, вы можетезагрузить его
И вот пример кода, который делает это:
$twitpic_url = 'http://twitpic.com/49275c';
$dom = new DOMDocument();
if (@$dom->loadHTMLFile($twitpic_url)) {
// HTML loaded successfully
// => You need to find the right <img> tag
// Looking at the HTML, you'll see it has id="photo-display"
$img_tag = $dom->getElementById('photo-display');
$src = $img_tag->getAttribute('src');
// Just to be sure, let's display the image's URL
var_dump($src);
// Now, you have to download the image which URL is $src
$img_content = file_get_contents($src);
// ANd do whatever you want with that binary image content
// like save if to a file :
file_put_contents('/tmp/my-image.jpg', $img_content);
}
Примечание: вы должны добавить некоторые проверки здесь и там - какнапример, проверьте, существует ли элемент отображения фотографий.