【发布时间】:2013-05-30 15:53:14
【问题描述】:
我需要检查带有 db 条目的损坏图像。所以现在我从表中选择所有项目并使用 CURL 检查它是否损坏。我在 DB 中有近 5000 个项目,CURL 需要很多时间。对于一个结果,它显示总时间为 0.07 秒。我的表结构如下:
+----+----------------------------------------+
| id | image_url |
+----+----------------------------------------+
| 1 | http://s3.xxx.com/images/imagename.gif |
| 2 | http://s3.xxx.com/images/imagename.gif |
| 3 | http://s3.xxx.com/images/imagename.gif |
| 4 | http://s3.xxx.com/images/imagename.gif |
+----+----------------------------------------+
那么还有其他方法可以检查损坏的图像吗?我想我不能在这里使用 LIMITS 因为我需要检查所有项目然后打印结果。我有用户 file_get_contents() 但它也需要很多时间。
【问题讨论】:
-
分而治之 :) 也许使用 ajax 分割检查会更快,或者只检查部分数据的脚本很少。取决于您是否要保存检查结果。
-
我将数据存储到一个数组中并在报告中输出
-
您是否有很多重复的 URL,例如在您的示例数据中?使用
DISTINCT禁止重复。 -
没有。根本没有重复的网址。 :(
-
谁拥有服务器
s3.xxx.com?如果您有办法获取/images/内容列表,则可以将其加载到表中并运行单个连接查询。
标签: php mysql curl limit file-get-contents