Php 多个URL
我需要检查带有db条目的损坏图像。所以现在我从表中选择所有项目,并使用CURL检查它是否损坏。我在DB中有将近5000个项目,CURL需要花费很多时间。其中一个结果是,总时间显示为0.07秒。我的表格结构如下:Php 多个URL,php,mysql,curl,limit,file-get-contents,Php,Mysql,Curl,Limit,File Get Contents,我需要检查带有db条目的损坏图像。所以现在我从表中选择所有项目,并使用CURL检查它是否损坏。我在DB中有将近5000个项目,CURL需要花费很多时间。其中一个结果是,总时间显示为0.07秒。我的表格结构如下: +----+----------------------------------------+ | id | image_url | +----+----------------------------------------+
+----+----------------------------------------+
| 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 |
+----+----------------------------------------+
那么有没有其他办法来检查损坏的图像呢?。我想我不能在这里使用限制,因为我需要检查所有项目,然后打印结果。我有用户文件\u get\u contents(),但这也需要花费很多时间。您可以在这里执行以下操作:
分而治之:)也许使用ajax进行检查分而治之会更快,或者只检查部分数据的脚本会更少。取决于是否要保存检查结果。我正在将数据存储到数组中,并将其输出到报表中。是否有大量重复的URL,如示例数据中的URL?使用
DISTINCT
抑制重复项。否。完全没有重复的URL:(谁拥有服务器s3.xxx.com
?如果你有办法获得/images/
内容列表,你可以将其加载到一个表中并运行一个连接查询。你将如何处理断开的图像链接?你的目标是从数据库中删除它们吗?一个更简单的方法不是从你这边提取文件名列表,并将其发送到数据库吗管理员可以对他们运行ls
?@AlwinAugustin是你的服务器还是一个外部站点?@silkfire反正我解决了这个问题。不是通过CURL。我有一个cron可以检查丢失的图像并发送邮件。所以现在我每天都将丢失的所有图像插入DB,并准备来自它的报告。谢谢男人:)我用这个:作为参考来实现类似的事情。