where(['is_delete'=> 2,'delete_time'=> ['<>', 0]])->select(); if($res){ foreach ($res as $v){ //删除动态下的标签引用 $top_zone = db::name('user_zone_topic')->where('zone_id',$v['id'])->select(); if($top_zone){ foreach ($top_zone as $vs){ db::name('user_zone_topic')->where('id',$vs['id'])->delete(); } } } } } //测试数据 public function testData() { $res = db::name('vs_user_gift_pack') ->field('gid,after_num') ->where(['a.updatetime'=> ['<=', 1766332800]]) ->group('a.gid') ->select(); $total_price = 0; if($res){ foreach ($res as $v){ $gft_price = db::name('vs_gift')->where('gid',$v['gid'])->value('gift_price'); $total_price += $gft_price * $v['after_num']; } } echo $total_price; echo '
'; var_dump($res); } // //爆币金币补偿 // public function coinCompensations() // { // // 原始数据(注意:原数组中重复的键会被直接覆盖,所以先把原始数据整理成二维数组形式) // $originalData = [ // ['27815', 16], // ['22349', 67], // ['30190', 72], // ['22202', 1], // ['27259', 62], // ['28869', 94], // ['28984', 10], // ['25101', 14], // ['27373', 81], // ['27373', 85], // ['30420', 20], // ['23160', 13], // ['30228', 92], // ['24984', 33], // ['28657', 15], // ['28657', 62], // ['28585', 21], // ['27562', 94], // ['29925', 80], // ['22713', 41], // ['21267', 87], // ['30228', 1000], // ]; // // // 第一步:重组数组,将相同键名的值存入数组中 // $res = []; // foreach ($originalData as $item) { // $k = $item[0]; // $v = $item[1]; // // 如果键已存在,就追加值;不存在则初始化数组 // if (isset($res[$k])) { // $res[$k][] = $v; // } else { // $res[$k] = [$v]; // } // } // echo time(). '
'; // // 第二步:遍历输出所有键值对 // foreach ($res as $k => $values) { // // 遍历同一个键名下的所有值 // foreach ($values as $v) { // echo $k . ':' . $v . '
'; // //开启事务 // db::startTrans(); // $wallet_update = model('api/UserWallet')->change_user_cion_log($k,$v,0,58,'参与幸运币活动获得'.$v.'倍'); // if(!$wallet_update){ // db::rollback(); // Log::error('抽奖处理失败:' .$k . '<:>' . $v ); // return ['code' => 0, 'msg' => '流水记录失败', 'data' => null]; // } // db::commit(); // sleep(1); // } // } // echo time(). '
'; // } }