我使用Ajax将数据从网页发布到php页面。它工作正常。
我从$ _POST获取数据,循环遍历值并创建一个名为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);
}
清单有两个字段,一个uid和一个状态。
然后我运行一个生成另一个数组的脚本,名为$ updates。它循环遍历一组不同的对象并输出数据以填充$ updates的变量。 $ updates的结构就是这样。
$updates[] = array('uid'=>$uid,
'state'=> $state,
'class' => $class,
'container' => $button_cont,
'closer' => $button_closer);
我想要做的是将$更新与$ checklist进行比较。
我想知道通过uid匹配记录的最有效方法并比较状态。如果国家匹配,我想什么都不做。
我已经阅读了一些有关循环和搜索的文章,但我想我已经看了太长时间了,因为它对我来说是希腊语。感谢您的帮助。
答案 0 :(得分:1)
保存清单,如 -
$checklist[$uid] = $state;
更新相同
$updates[$uid] = array('state'=> $state,
'class' => $class,
'container' => $button_cont,
'closer' => $button_closer);
然后开始循环
foreach ($updates as $key => $update) {
if ($update['state'] == $checklist[$key]) {
//your action
}//compare the values
}
$ key将是uid.hope它会帮助你