php如何知道图像是否已完全加载?

时间:2015-05-16 10:11:43

标签: php

我写了一个PHP脚本,它只是获取图像的URL并尝试下载/保存在服务器上。

我的问题是,有时图像没有完全加载,代码只会部分保存图像。我做了一些研究,但无法弄清楚我是否可以添加一些东西,所以它可以检查它是否保存完整的图像。

图像尺寸和图像的其他属性是随机的,所以我无法用这些因素检查它,除非有一种方法可以在加载图像之前获取这些信息。

谢谢大家。

[
    {
        "id": false,
        "title": "All Day Event",
        "start": "2015-02-01",
        "end": false
    },
    {
        "id": false,
        "title": "All Day Event",
        "start": "2015-02-07",
        "end": "2015-02-10"
    },
    {
        "id": 999,
        "title": "Repeating Event",
        "start": "2015-02-09T16:00:00-05:00",
        "end": false
    }
]

1 个答案:

答案 0 :(得分:1)

我认为使用cURL比使用fopen for url更好。看看这个:

$file = fopen($filename, 'wb'); //Write it as a binary file - like image

$c = curl_init($url);
curl_setopt($c, CURLOPT_FILE, $file);
curl_setopt($c, CURLOPT_FOLLOWLOCATION, true); //Allow cURL to follow redirects (but take note that this does not work with safemode enabled)
curl_exec($c);
$httpCode = curl_getinfo($c, CURLINFO_HTTP_CODE); //200 means OK, you may check it later, just for sure
curl_close($c);

fclose($file);

部分基于Downloading a large file using curl