PHP中的sleep()函数

PHP中的sleep()函数,php,html,sleep,Php,Html,Sleep,我有一个php页面,在这里我需要显示来自数据库的图像,等待几秒钟,然后再次显示来自数据库的图像,并分别显示下一个图像。 我尝试使用sleep()函数,但它运行了整秒钟,然后一次显示所有图像。 示例: 图像1 3秒 图像2 2秒 因此,它首先需要显示image1等待3秒,然后显示image2等待2秒,依此类推 但现在它运行5秒,同时显示iamge1和image2 我的代码: <div class="box"> <?

我有一个php页面,在这里我需要显示来自数据库的图像,等待几秒钟,然后再次显示来自数据库的图像,并分别显示下一个图像。 我尝试使用
sleep()
函数,但它运行了整秒钟,然后一次显示所有图像。
示例:
图像1 3秒
图像2 2秒
因此,它首先需要显示image1等待3秒,然后显示image2等待2秒,依此类推
但现在它运行5秒,同时显示iamge1和image2
我的代码:

 <div class="box">
            <?
            $select= "select * from filemanager WHERE day='$dayofweek' and ('$curr_time'>=fromTime and '$curr_time'<=toTime)";
            echo $select;
                $res1 =  mysqli_query($con, $select);
                $num = mysqli_num_rows($res1);
                echo $num;
                while ($data1 = $res1->fetch_assoc())
                {
                    $file_name=$data1['fileName'];
                    $path='/uploads/mediaFile/'.$file_name;
                    $sec=$data1['seconds'];
                    echo $sec;
            ?>
            <img src="<?echo $path?>" alt="" />
            <?
            sleep($sec);
                }
            ?>
            
        </div>

“alt=”“/>
请给出建议。

谢谢

您想暂停php脚本。php脚本在服务器上运行。 暂停服务器是一个非常重要的想法。:-)

你需要一个能够满足尽可能多的请求的快速服务器。因此,忘记这个计划,让我们制定一个新的计划

您有一个提供图片服务的服务器。您有一个客户端,它希望这些图片每秒钟旋转一次。在服务器端,您需要一个脚本(php),该脚本使用特定图片的编号进行调用。此脚本将数据提供给客户端

您在客户端有几种可能性:

(a)在客户端,您需要一个javascript,它会不时启动对服务器脚本的AJAX调用。它会将返回的图片添加到页面中,并再次等待一段时间

(b)您运行一个javascript,该javascript会不时重新启动客户端,并汇总一个计数器,告诉服务器脚本下一张图片


就我个人而言,我更喜欢(a)-但那只是我个人的选择。

你可以试试这样的(JS):


关于setTimeout和setInterval:

听起来你需要用一些AJAX调用来重构代码和方法,以便在一段时间间隔后获得更多图像。PHP在服务器上运行,而不是在浏览器上。你只是让PHP请求花费更长的时间。;)要在客户端显示图像增加延迟,你需要使用JavaScript或CSS。你能帮我看看代码示例,或者你能分享的任何链接吗?我曾经为幻灯片系统制作过一个PHP脚本。我不想使用任何javascript或任何东西,所以我只是让页面在设定的秒数后自动刷新,这样每次重新加载时查询都能得到下一张图片。(在我的例子中,实际上没有查询,我只是对某个文件夹中的文件使用了上次修改的属性,并在每次读取图片时更新该属性)-这对我来说效果很好,因为图片总是全屏显示,页面上没有其他显示,而且每次图片都可以以相同的顺序显示。@GrumpyCrouton这可能对我有用,在我的情况下,我需要从Queries获得它,即使我认为ajax可能是正确的方式。你能帮助编写代码示例吗。@Lawrencerone是的.Thx。我已经编辑了我的答案。其中的脚本太多:-)第三个选项(c)是oldschool iframe,带有指向下一个图像id:D的元刷新标记
var img = 1;

function request() {
    var xhr = new XMLHttpRequest();
    xhr.open('POST', 'fetch.php');
    xhr.onload = function() {
        if (xhr.status != 200) {
            // Something went wrong
        } else {
            var res = xhr.response;
            // res = fetched image
        }
    };
    xhr.send('img=' + img);
    img += 1;
}

setInterval(request, 10000);