我正在尝试学习PHP,我写了这段代码:
<?php
$number = 1;
while ($number < 21)
{
echo "<p>I'm " . "$number" . " years old!</p>";
$number++;
}
?>
所以我的问题是;是否有可能设置一些东西,以便在几秒钟后看到句子出现?像这样,首先你看到:我已经2岁了!然后就像3秒钟一样:我已经3岁了!出现,然后又过了3秒:我才4岁!出现。 那可能吗? 顺便说一下这是我的第一篇文章,如果我犯了错误,请提供反馈,这将有助于我将来:)
谢谢
为未来可能的访问者编辑:PHP不是为此设计的,而是javaScript。
答案 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代码,它将在客户端进行评估一边而不是在服务器端。