用php保存IMDb海报

时间:2010-11-17 18:21:18

标签: php image save imdb

我正在为自己制作一个脚本来列出我最喜欢的电影。所以我几乎完成了它,但我无法用IM保存IMDb的小海报。我使用了file_put_contents()函数,但它正在创建一个0kb的jpeg文件。这是我使用的代码:

file_put_contents('./posters/t0120689.jpg', file_get_contents('http://ia.media-imdb.com/images/M/MV5BMTUxMzQyNjA5MF5BMl5BanBnXkFtZTYwOTU2NTY3._V1._SX214_CR0,0,214,314_.jpg'));

当然没用。然后我用cURL:

$ch = curl_init(
file_put_contents('./posters/t0120689.jpg', file_get_contents('http://ia.media-imdb.com/images/M/MV5BMTUxMzQyNjA5MF5BMl5BanBnXkFtZTYwOTU2NTY3._V1._SX214_CR0,0,214,314_.jpg');
$fp = fopen('./posters/t0120689.jpg', 'wb');
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
fclose($fp);

它也没用。这是来自IMDb的示例电影页面:http://www.imdb.com/title/tt0120689/

1 个答案:

答案 0 :(得分:3)

在我的Macbook上运行这个对我有用:

<?php
file_put_contents('./t0120689.jpg', file_get_contents('http://ia.media-imdb.com/images/M/MV5BMTUxMzQyNjA5MF5BMl5BanBnXkFtZTYwOTU2NTY3._V1._SX214_CR0,0,214,314_.jpg'));
?>

如果您在某个服务器上托管此项,则需要将php ini设置allow_url_include设置为打开,以便您在域外获取请求。