【问题标题】:how to summary values in specific range?如何汇总特定范围内的值?
【发布时间】:2017-07-18 10:36:45
【问题描述】:
        $srv2 = 0;
        foreach ($result as $value) {

            for($i = 0; $i >= 11 && $i <= 20; $i++){
                $srv2 += $value['words_count'];
            }
            if ($i > 20)
            {
                break;
            }
        }

sameone 能告诉我什么是错的吗?我想总结 11-20 范围内的所有值,包括 11。

【问题讨论】:

  • for($i = 0; $i &gt;= 11 &amp;&amp; $i &lt;= 20; $i++){ 替换为for($i = 11; $i &lt;= 20; $i++){ 第一个不会循环,因为您将拥有 $i=0 并且循环将结束,因为它小于 11。

标签: php for-loop


【解决方案1】:

试试这个。将你的 for 循环更改为

srv2 = 0;
foreach ($result as $value) {

    for($i = 11; $i <= 20; $i++){
        $srv2 += $value['words_count'];
    }
    if ($i > 20)
    {
        break;
    }
}

【讨论】:

  • 好的,现在如果我需要来自 foreach 循环的下一个范围,例如:` $srv3 = 0; foreach ($result as $value) { for($i = 21; $i 30) { 休息; } }` 我得到了像 srv2 一样的结果
  • 如何使用for循环来设置foreach循环的范围??我得到了这个:但仍然没有工作,只总结第一个结果 1-10,我在这个获取 100 个结果,需要总结 examplek 位置从 20 到 30,得到这样的东西:/21-30 $srv3 = 0; foreach ($result as $value) { for($i = 21; $i &lt;= 30; $i++){ $srv3 += $value['words_count_out_a']; } if ($i &gt; 30) { break; } }
【解决方案2】:
    $srv3 = 0;
foreach ($result as $value) {

    for($i = 21; $i <= 30; $i++){
        $srv3 += $value['words_count'];
    }
    if ($i > 30)
    {
        break;
    }
}

结果和2一样,但是不可能,

【讨论】:

  • 我想我下一个for循环,2,3,4,5,6,7...需要使用&&或||在for循环中
  • 使用 && 时什么都不给
猜你喜欢
  • 1970-01-01
  • 2012-10-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-26
  • 2021-01-08
相关资源
最近更新 更多