首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我能告诉我的php函数在"file_get_contents“用php代码中的javascript加载页面之前不执行吗?

问我能告诉我的php函数在"file_get_contents“用php代码中的javascript加载页面之前不执行吗?
EN

Stack Overflow用户
提问于 2020-02-27 13:53:24
回答 1查看 38关注 0票数 0

这是我的php函数:

代码语言:javascript
复制
$result = file_get_contents('https://www.example.com/index.php'); 
$regex = '/<img class="pic" src="(.*?)">/';   
preg_match($regex, $result, $matches);
 return($matches[1]);

这是一个从链接中获取图片函数,它有时返回图片,有时不返回,因为站点中的图像有时需要几秒钟才能加载,有时不需要。我想防止在我的函数中发生这种情况,我想延迟返回,直到图像加载,我知道这在php中是不可能的,sleep()没有帮助,所以我知道我必须用javascript来做,但我不知道怎么做,请帮帮我!

EN

回答 1

Stack Overflow用户

发布于 2020-02-27 14:47:23

如果你想异步加载一些东西,我想最简单的解决方案是从客户端发起另一个请求,例如:

  1. 加载没有所需图片的页面
  2. 创建一个新脚本,该脚本将在服务器上获取该图像的URL。例如,让我们在fetch-image.php中调用。
  3. 确保您的脚本将渲染图像并返回正确的Content-Type头。示例can be found here。对于需要修改的代码,请参见下面的内容。将上面提到的代码移动到新的script
  4. Replace
  5. src="/fetch-image.php"属性,其中包含fetch script

的路径

修改后的脚本:

代码语言:javascript
复制
$result = file_get_contents('https://www.example.com/index.php'); 
$regex = '/<img class="pic" src="(.*?)">/';   
preg_match($regex, $result, $matches);
echo file_get_contents($matches[1]);

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60427033

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档