使用php检查img是否成功加载

时间:2017-04-28 18:15:22

标签: php image loaded

如何使用php检查图像是否已加载。

我正在使用这个

<img onload="myFunction1()" onerror="myFunction2()" src="https://www.google.com/img.png">

但需要纯粹的php而不是html标签

1 个答案:

答案 0 :(得分:2)

  

如何使用php检查图像是否已加载   我正在使用这个   <img onload="myFunction1()" onerror="myFunction2()" src="https://www.google.com/img.png">

     

但需要纯粹的php而不是html标签

有些观点:

1)看起来您正在尝试检查图像是否已在浏览器中加载,此无法使用PHP ,因为PHP是服务器端的,只有PHP代码的输出才会发送到浏览器。

2)为什么你在javascript应该尝试使用PHP?

3)如果你对PHP的测试有一些模糊的技术要求,那么你可以使用一些AJAX请求来做这件事,但与仅仅拥有一些浏览器相比,这将是极其低效的-run javascript,无需再与服务器通话。

  • 值得注意的是,即使您确实构建了基于PHP + Javscript的ajax测试,如果图像是由浏览器加载的;结果将是无用的,因为如前所述,PHP无法对结果进行操作,PHP在页面 页面到达客户端浏览器之前 页面上工作。
    它是比如喝了一整杯咖啡,然后告诉咖啡师它太热了。

4)使用Javascript。

您可以在将页面发送到浏览器之前检查

如果您只是想检查https://www.google.com/img.png是否存在且可以访问,那么可以在PHP中执行此操作;有一些警告。您可以use cURL(阅读top three answers它们都非常有用)或者您可以使用this answer to a similar question中概述的PHP getimagesizeget_headers

一旦确定指定的图像是否有效且可以访问,您就可以使用PHP选择结果并更改发送到浏览器的页面内容,在发送页面之前,通常使用if语句根据其有效性显示不同的图像。