2016-04-26 228 views
0

嗨,我只是想知道如何在if语句工作(循环)? 我希望页面能够显示1到10之间的数字,并显示对数字1和2的特别注释。 非常感谢!if语句在while循环中?

<?php 
$x=1; 
while($x <= 10) { 
echo "". $x . "<br />"; 
$x = $x + 1; } 

if ($x = 1) { 
echo "".$comment.""; 
    $comment = "this is one!";}  
elseif ($x = 2) { 
echo "".$comment.""; 
    $comment = "this is two!";} 

?> 

+0

只需在条件周围包裹'while'循环即可。你也在声明'$ comment'之前回应。 – Parfait

回答

0

首先 - 你需要确保你的IF条件是你的while循环中。此外,您应该了解一个等号和一个双等号之间的区别(在这种情况下,您希望等于等于==,因为您正在测试等号)。

我对你的代码采取会像下面这样:

<?php 
$x = 1; 
while($x <= 10) { 
    $comment = ""; 

    if ($x == 1) { 
     $comment = "This is one!"; 
    } 

    if ($x == 2) { 
     $comment = "This is two!"; 
    } 


    echo $x . " " . $comment . "<br />\n"; 
    $x = $x + 1; 
} 

这产生了:

1 This is one!<br /> 
2 This is two!<br /> 
3 <br /> 
4 <br /> 
5 <br /> 
6 <br /> 
7 <br /> 
8 <br /> 
9 <br /> 
10 <br /> 
+0

非常感谢!它完美的工作(:P只是关闭PHP?>被遗忘,但它的一切良好哈哈感谢这么muchhhhhh) – meowwwwww

+0

没有问题。另外,PHP并不一定要求你关闭'?>' - 这取决于你是否有任何HTML。 – Ben

+0

既然'$ x'是你的号码,你想要显示$ x乘以2。所以输出行将被改为:'echo($ x * 2)。 “”。 $评论。 “
\ n”;' – Ben

0

其实“=”是赋值运算符,而不是一个有条件的经营者必须使用if和elseif语句中的'=='。并在使用之前初始化$ comment。

if ($x == 1) { 
     $comment = "this is one!"; 
     echo "".$comment.""; 
    }  
    elseif ($x == 2) { 
     $comment = "this is two!"; 
     echo "".$comment.""; 
    } 
0

只是为了完成以前的答案......如果你知道你想要做多少次迭代,我们更喜欢使用“for”。试试这个:

<?php 

For($i = 0 ; $i < 10 ; $i++){ 

    $comment = ""; 

    if($i == 1) $comment = "One"; 

    if($i == 2) $comment = "Two"; 

    echo "Page: " . $i . " -> Comment: " . $comment . "\n"; 

} 

?> 
+0

嗨,我只是要问FOR的声明!谢谢!!如果我想让它显示每次翻倍的数字,我该怎么办?像显示器2,4,6 ......?谢谢soooooo多! – meowwwwww

+0

如果你想显示2,4,6但是做所有的迭代......你可以使用modulo:%像这样:'if($ i%2 == 0)echo $ i;'如果你想做只为2,4,6,...循环改变这个'for($ i = 0; $ i <10; $ i + 2)' –