我有两个变量 x和y
如果x = 5且y = 10,我想打印
5
6
7
8
9
10
如果x = 10且y = 5,那么我想打印
10
9
8
7
6
5
我已经使用IF
在2循环中编写了这段代码是否有任何逻辑可以使用单个循环打印它
答案 0 :(得分:4)
这比其他答案简单得多:
foreach (range($x, $y) as $number) {
echo $number . "<BR>";
}
答案 1 :(得分:2)
$increment = ($x < $y) ? 1 : -1;
for ($i = $x; $i != $y; $i += $increment) {
echo $i;
}
答案 2 :(得分:0)
这应该适合你:
<?php
$x = 10;
$y = 5;
for ($i = 0; $i <= abs($x-$y); $i++) {
if ($x > $y)
echo $x-$i . "<br />";
elseif($x < $y)
echo $x+$i . "<br />";
}
?>
答案 3 :(得分:0)
你正在寻找这个:
<?php
$x = 5;
$y = 10;
while ($x != $y) { // this loop prints the numbers until they are equal
if ($x < $y) echo $x++ . "\n\n"; // if x < y print and increment x
else echo $x-- . "\n\n"; // else print and decrement x
}
echo $x . "\n\n"; // now the two nos are equal, print the no itself
答案 4 :(得分:0)
一个周期,每次迭代一个条件
<?php
$x = 5;
$y = 10;
$start = $x;
$step = $x < $y ? 1 : -1;
$stop = $y + $step;
for ($i = $start; $i != $stop; $i+=$step) {
echo $i . "\n";
}