为什么php变量无法使用javascript循环?

时间:2014-03-27 05:58:00

标签: javascript php

我预计每个警报的数量都会增加,但结果是0的相同数字。

我能知道为什么吗?

我需要这样做,因为在我的真实代码中,$ wow代表我从服务器检索的值,我需要使用javascript for循环来计算我所针对的数字元素。

我该怎么做?

这是我的代码:

<html>
<head>
<script>
<?php $wow = 0; ?>
for(var i =0; i < 4; i++){
   alert("<?php echo $wow; ?>");
    <?php $wow++; ?>
    }
</script>
<body>
</body>
</html>

3 个答案:

答案 0 :(得分:4)

PHP在服务器端执行,客户端使用JavaScript。

它的工作方式是这样的:

  1. 浏览器提出请求
  2. 服务器接收请求
  3. 服务器执行PHP
  4. 服务器发送响应/ HTML
  5. 浏览器收到回复/ HTML
  6. 浏览器解析HTML /执行JS。
  7. 只需查看浏览器中的文档源,就没有PHP,因为它已经执行(在服务器上)。


    您可以做的是将PHP变量的值注入JavaScript源代码并使用JavaScript操作值:

    var wow = <?php echo $wow; ?>
    for(var i =0; i < 4; i++){
      alert(wow);
      wow++;
    }
    

    另见

答案 1 :(得分:0)

这个怎么样:

<html>
<head>
<script>
<?php
    $wow = 0;
    while($wow < 4){
        echo "alert('" . $wow++ . "')";
    }
?>
</script>
<body>
</body>
</html>

答案 2 :(得分:0)

根据@Felix Kling评论,

php脚本在服务器端执行。

不要在php中定义变量,因为php脚本执行服务器端而非客户端,如javscript

你需要改变像...这样的脚本。

var wow = <?php echo $wow; ?>

for(var i =0; i < 4; i++){
   alert("<?php echo wow; ?>");
    <?php echo wow++; ?>
    }

但是没有意义通过php脚本使用/ create variable

你可以像这样写

var wow = <?php echo $wow; ?>
    for(var i =0; i < 4; i++){
       alert(wow);
       wow++;
        }