条件

时间:2016-07-25 22:50:56

标签: php

我正在尝试学习PHP,我写了这段代码:

<?php

$number = 1;

while ($number < 21)
{
    echo "<p>I'm  " . "$number" . " years old!</p>";
    $number++;
}

?>

所以我的问题是;是否有可能设置一些东西,以便在几秒钟后看到句子出现?像这样,首先你看到:我已经2岁了!然后就像3秒钟一样:我已经3岁了!出现,然后又过了3秒:我才4岁!出现。 那可能吗? 顺便说一下这是我的第一篇文章,如果我犯了错误,请提供反馈,这将有助于我将来:)

谢谢

为未来可能的访问者编辑:PHP不是为此设计的,而是javaScript。

1 个答案:

答案 0 :(得分:1)

PHP是服务器端脚本语言,代码在服务器端执行。最终生成的文本按原样发送到客户端并显示在浏览器中。如果您想要为文本设置动画或延迟几秒钟,则必须使用Javascript(而不是PHP)在客户端中完成此操作。

类似这样的javascript会是这样的:

var n = 1;
a = setInterval(function() {
    document.write("I'm " + n + " years old!");
    if (n++ >= 21) {
        clearInterval(a);
    }
}, 1000);

客户端将从PHP发送的内容中执行Javascript,因此如果我们在PHP的<script>标记内发送一些Javascript代码,它将在客户端中执行。所以,我们可以这样做:

<?php
    echo "<script type='text/javascript'>var n = 1; a = setInterval(function() { document.write('I\'m ' + n + ' years old!'); if (n++ >= 21) clearInterval(a); }, 1000);</script>";
?>

当然你并不需要使用PHP(你可以在<script>标签内和<?php ?>标签之外包含Javascript代码,它将在客户端进行评估一边而不是在服务器端。