Php 使用无限while循环动态更改值是一种不好的做法吗?
我想要一段文本,它已经每10分钟动态更改一次,这样做就不会刷新页面。我的想法大致如下:Php 使用无限while循环动态更改值是一种不好的做法吗?,php,loops,while-loop,sleep,Php,Loops,While Loop,Sleep,我想要一段文本,它已经每10分钟动态更改一次,这样做就不会刷新页面。我的想法大致如下: <?php while (1 < 2) { echo $value; sleep(60); } ?> 我意识到这是一种让while循环运行的愚蠢方法,我认为它可以与while{}一起工作,但我只是想确保,在我实际编写这篇文章时,这会得到纠正,只要这样做不可怕。如果有更好的方法,我很想听到!谢谢 编辑:我刚刚注意到它会在第一个之后回显值,有没有切割器方法让
<?php
while (1 < 2) {
echo $value;
sleep(60);
}
?>
我意识到这是一种让while循环运行的愚蠢方法,我认为它可以与while{}一起工作,但我只是想确保,在我实际编写这篇文章时,这会得到纠正,只要这样做不可怕。如果有更好的方法,我很想听到!谢谢
编辑:我刚刚注意到它会在第一个之后回显值,有没有切割器方法让它替换它
Edit2以下是我已经编写的用于检索变化值的php函数:
<?php
function getTotal($basePrice){
$dogeValue = file_get_contents("https://www.dogeapi.com/wow/?a=get_current_price");
$postage = .49/$dogeValue;
return round($sellAmount = $basePrice/$dogeValue - $postage - ($basePrice*0.1/$dogeValue));
}
?>
简短的回答是:是的,这是一种糟糕的做法 原因包括: 您绑定的服务器可能会超时 除非您使用缓冲,否则事情不会在您想要的时间反映出来 您永远不会将关闭标记发送到浏览器或以后发生的任何事情。 覆盖已经存在的内容是一件棘手的事情,因此最终的结果是输出增加而不是改变。 建议: 使用客户端代码javascript、AJAX—不要尝试在服务器端执行此操作 您可以在中看到定期AJAX的示例 对于周期性JavaScript,请参见中的许多好答案。此脚本将不会向您显示任何内容,因为在处理php脚本之前,web服务器不会向输出发送任何内容,考虑到您的无限循环,它将永远不会发生
而不是这个不工作的想法,使用Ajax、CRON Job或甚至纯JavaScript,它当然非常简单和合理。
你不能用客户端JavaScript做些什么?我可能会考虑使用CRON任务来做这件事。为什么你要这样做而不是每10分钟运行一个CRON?这将继续添加到文本中。而且我认为你的标签永远不会关闭…为什么1<2而不是在正确的时候?不完全正确。有些web服务器会在运行时输出,如果有缓存或没有缓存,我指的是使用apache的apache或NginXWell等常规web服务器,我可以在运行时输出,我在过程中使用了该方法,因为cron作业不是一个选项,页面必须能够快速加载,所以运行所需的时间是在所有输出之后html