我有一个总数据,我想循环开始时的一些数据。仅在数据启用条件下,如果满足条件,则它将通过计数计数器并将减少。在示例中,
我需要来自循环的10个数据
for ($i=1; $i <= 10; $i++) {
if($i == '8') {
echo "DATA PASSED : ".$i."<br>";
$i-1;
} else {
echo "SUCCESS : ".$i."<br>";
}
}
结果
SUCCESS : 1
SUCCESS : 2
SUCCESS : 3
SUCCESS : 4
SUCCESS : 5
SUCCESS : 6
SUCCESS : 7
DATA PASSED : 8
SUCCESS : 9
SUCCESS : 10
In在上面的例子中,循环我的代码的结果是不对的。总循环不会导致减少。
数据应为10.如果我能看到,我只能获得9个数据,因为应该跳过第8个数据。
我应该如何更正代码并生成
SUCCESS : 1
SUCCESS : 2
SUCCESS : 3
SUCCESS : 4
SUCCESS : 5
SUCCESS : 6
SUCCESS : 7
DATA PASSED : 8
SUCCESS : 9
SUCCESS : 10
SUCCESS : 11
结果是10个数据。感谢
答案 0 :(得分:1)
请使用以下代码
$data_passed =false;
for ($i=1; $i <= 10; $i++) {
if($i == '8') {
echo "DATA PASSED : ".$i."<br>";
echo "SUCCESS : ".($i+1)."<br>";
$data_passed = true;
} else{
echo "SUCCESS : ".($data_passed?$i+1:$i)."<br>";
}
}
希望您理解代码
答案 1 :(得分:1)
do while
或while
循环应该更适合您的情况。我不是一个PHP专家,但这应该工作。有关php中循环的更多信息可以找到here。
$counter = 1;
$i= 0; // it should be start with 0
while($counter <= 10) {
$i++;
if($i == '8') {
echo "DATA PASSED : ".$i."<br>";
} else {
echo "SUCCESS : ".$i."<br>";
$counter++;
}
}