在 PHP 中:我有一个通过数组运行的 for 循环,如果每个键的值与我要查找的值不匹配,我会跳过它。
如何创建一个循环,直到我找到我正在寻找的 20 个值。所以我不能for($i=0;$i<50;$i++)
因为前 50 个值,可能只有 2 个值匹配。所以它需要运行到 20 场比赛。
更新:我还需要遍历数组,所以我仍然需要像这样检查每个值: $news_posts[$i]['category']; 如果类别是我正在寻找的,那么那就是 1。如果不是,那么我跳过它。我需要20个。
在 PHP 中:我有一个通过数组运行的 for 循环,如果每个键的值与我要查找的值不匹配,我会跳过它。
如何创建一个循环,直到我找到我正在寻找的 20 个值。所以我不能for($i=0;$i<50;$i++)
因为前 50 个值,可能只有 2 个值匹配。所以它需要运行到 20 场比赛。
更新:我还需要遍历数组,所以我仍然需要像这样检查每个值: $news_posts[$i]['category']; 如果类别是我正在寻找的,那么那就是 1。如果不是,那么我跳过它。我需要20个。
您可以使用多个条件:
for ($i=0, $found=0; $i<count($news_posts) && $found<20; ++$i)
{
if ($news_posts[$i]['category'] == 'something')
{
++$found;
// do the rest of your stuff
}
}
这将遍历 中的所有内容$news_posts
,但如果找到 20 则更早停止。
一个 for 循环包含三个部分(initialization; condition; increment)
。您可以在其中任何一个中包含多个语句(或没有)。例如,for (;;)
等价于while (true)
。
$count = 0;
$RESULT_COUNT = 20;
while($count < $RESULT_COUNT) {
// your code to determine if result is found
if($resultFound) {
$count++;
}
if($resultsEnd) { // check here to see if you have any more values to search through
break;
}
}
$foundValues = 0;
while($foundValues < 20)
{
//Do your magic here
}
这将起作用。请注意,如果您的计数从未超过 19,则循环将永远运行。
$count = 0;
while ($count < 20)
{
if (whatever)
{
$count++;
}
}
$count = 0;
while(true){
if($count>20)
break;
...
}
当某些条件为真时,只需跳出循环。
for ($i = 0; $i < $countValue; $i++)
{
//do something
if ($i == 10) break;
}