您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

求二维数组合并的一个改进

2024/7/14 16:32:47发布24次查看
求二维数组合并的一个改进
一个抽奖程序,每次抽奖机会需要4种不同类型的礼包合成。
如下,数据库用了一个视图从礼包增减记录表分组求和查出来的结果。
uid gifttype, total
a 1 5
a 3 1
要动态求出用户的抽奖机会以及在页面循环输出的话,都希望上面的二维数组变成如下
a 1 5
a 2 0
a 3 1
a 4 0
我的算法如下,可以正常运行,解决问题。
待改进 1. 使用m()-select()搜出来的 uid,gifttype,total都是string 类型.
2. php有无更简单的内置函数之类的?
/////////////////////////////////////////////public function dealgifts($gifts,$uid){
        $blankgifts=array();
        for($i=1;$i            $blankgifts[$i-1]=array(
              'gtype'=>$i,
              'uid'=>$uid,
              'total'=>0
            );
            foreach ($gifts as $val){
                if($val['gtype']==$i){
                    $blankgifts[$i-1]=$val;
                    break;
                }
            }
        }
        return $blankgifts;
    }dump结果:
array(2) {
  [0] => array(3) {
    [gtype] => string(1) 1
    [uid] => string(1) 2
    [num] => string(1) 1
  }
  [1] => array(3) {
    [gtype] => string(1) 3
    [uid] => string(1) 2
    [num] => string(1) 3
  }
}
array(4) {
  [0] => array(3) {
    [gtype] => string(1) 1
    [uid] => string(1) 2
    [num] => string(1) 1
  }
  [1] => array(3) {
    [gtype] => int(2)
    [uid] => int(2)
    [num] => int(0)
  }
  [2] => array(3) {
    [gtype] => string(1) 3
    [uid] => string(1) 2
    [num] => string(1) 3
  }
  [3] => array(3) {
    [gtype] => int(4)
    [uid] => int(2)
    [num] => int(0)
  }
}
ad:真正免费,域名+虚机+企业邮箱=0元
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product