drt12345678 2014-10-22 15:10
浏览 31
已采纳

结合两个foreach php

first foreach

foreach (range(1, 70) as $num) {
   echo 'Number '.$num.'<br />';
}

second

ksort($numbers);
foreach ($numbers as $key => $value){
    echo 'Number '.$key.' = '.$value.' times<br />';
}

First Foreach create numbers list from 1 to 70. Second Foreach take some info from db ($numbers) like

Number 1 = 1 times
Number 2 = 1 times
Number 6 = 1 times
Number 11 = 1 times
Number 12 = 1 times
Number 13 = 1 times
Number 14 = 1 times
Number 16 = 1 times
Number 17 = 1 times
Number 21 = 2 times
Number 24 = 1 times
Number 25 = 1 times
Number 28 = 1 times
Number 30 = 1 times
Number 31 = 2 times
Number 33 = 1 times
Number 36 = 3 times
Number 38 = 1 times
Number 63 = 1 times
Number 65 = 1 times

Now i need do this work like this:

if($key==$num){
echo 'Number '.$key.' = '.$value.' times<br />';
}else{
echo 'Number '.$key.' = 0 times<br />';
}

All this list from 1 to 70 with show how much times (if exists). Thanks

  • 写回答

2条回答 默认 最新

  • dptj13337 2014-10-22 15:16
    关注

    I would make an associative array for that with the number as key and the value is the number.

    $numbers = array();
    foreach (range(1, 70) as $num)
    {
       $numbers[$num] = 0;
    }
    

    and with the database loop you combine them

    foreach ($dbnumbers as $num => $value)
    {
        $numbers[$num] += $value;
    }
    

    Then you can just iterate over it for displaying ;)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥50 求解vmware的网络模式问题 别拿AI回答
  • ¥24 EFS加密后,在同一台电脑解密出错,证书界面找不到对应指纹的证书,未备份证书,求在原电脑解密的方法,可行即采纳
  • ¥15 springboot 3.0 实现Security 6.x版本集成
  • ¥15 PHP-8.1 镜像无法用dockerfile里的CMD命令启动 只能进入容器启动,如何解决?(操作系统-ubuntu)
  • ¥30 请帮我解决一下下面六个代码
  • ¥15 关于资源监视工具的e-care有知道的嘛
  • ¥35 MIMO天线稀疏阵列排布问题
  • ¥60 用visual studio编写程序,利用间接平差求解水准网
  • ¥15 Llama如何调用shell或者Python
  • ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?