dongnan1989 2014-07-28 04:09
浏览 115
已采纳

Php循环遍历两个数组

I'm posting data from a web page to a php page with Ajax. It's working fine.

I get my data from the $_POST, loop through the values and create an array called checklist.

if($_POST != ''):
$dataset = $_POST['data'];
$checklist = array();
$eventid='';
foreach ($dataset as $i => $row)
{
   $uid = $row['box-id'];
   $state = $row['box-state'] ;
   $eventid = $row['e_id'];
   $checklist[] = array('uid'=>$uid, 
                    'state'=> $state);
}

Checklist has two fields, a uid and a state.

I then run a script that generates another array, called $updates. It loops through a different set of objects and outputs the data to populate the variables for $updates. The structure of $updates is as such.

 $updates[] =  array('uid'=>$uid, 
                     'state'=> $state,
                     'class' => $class,
                     'container' => $button_cont,
                     'closer' => $button_closer);

What I would like to do is to compare $updates with $checklist.

I'd like to know the most efficient way to match the records by the uid and compare the state. If the state matches, I'd like to do nothing.

I've read a few of the articles on looping and search, but I'm thinking I've been looking at this for too long because it's Greek to me. Thanks for assistance.

  • 写回答

1条回答 默认 最新

  • dongyue7796 2014-07-28 04:17
    关注

    save the checklist like -

    $checklist[$uid] = $state;
    

    same for updates

    $updates[$uid] = array('state'=> $state,
                     'class' => $class,
                     'container' => $button_cont,
                     'closer' => $button_closer);
    

    then start the loop

    foreach ($updates as $key => $update) { 
       if ($update['state'] == $checklist[$key]) {
           //your action
       }//compare the values
    }
    

    $key will be the uid.hope it will help you

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作