在脚本中递增php变量不起作用

时间:2015-03-30 18:26:41

标签: javascript php html variables

<?php
$hello[1]="A";
$hello[2]="B";
$hello[3]="C";
$hello[4]="D";
$m=1;
?>
<html>
<body>
<script>
var i;
<?php $m=1; ?>
for(i=1;i<5;i++)
{
document.write("<?php echo $hello[$m]; ?> <br>");
<?php $m++; ?>
}
</script>
</body>
</html>

在上面的php代码(文件)中,它只显示四次“A”字母。我希望它读取“hello []”数组中的所有元素。 $ m不会增加1。我试过“$ m = $ m + 1”。它也行不通。我怎么能纠正这个?

3 个答案:

答案 0 :(得分:0)

如果你想增加一个php变量,你应该在php中循环

<?php
$hello[1]="A";
$hello[2]="B";
$hello[3]="C";
$hello[4]="D";
?>
<html>
<body>
<script>
<?php
for($i=1;$i<5;$i++)
{
?>
    document.write("<?php echo $hello[$i]; ?> <br>");
<?php
}
?>
</script>
</body>
</html>

答案 1 :(得分:0)

我和Khan Shahrukh在一起,但看到你想要做什么,我认为你并不需要JS来打印这些变量。也许这更适合你:

<html>
<body>
<?php
    $hello[1]="A";
    $hello[2]="B";
    $hello[3]="C";
    $hello[4]="D";

    for($i=1;$i<5;$i++)
    {
        echo $hello[$i] . " <br>";
    }
?>
</body>
</html>

它将直接在页面中输出所需的变量,而不是使用JS(当然,这取决于你是否真的需要它)。

答案 2 :(得分:0)

这个怎么样?

<html>
<body>
<?php
    $hello[1]="A";
    $hello[2]="B";
    $hello[3]="C";
    $hello[4]="D";
?>
<script>
<?php
    foreach($hello as $key=>$value)
    {
        echo 'document.write('.$value.');'."\n";
    }
?>
</script>
</body>
</html>

<强>输出:

<html>
<body>
    <script>
        document.write(A);
        document.write(B);
        document.write(C);
        document.write(D);
    </script>
</body>
</html>