PHP - 比较和筛选两个数组不同尺寸的 [英] PHP - compare and filter two arrays with different dimensions

查看:141
本文介绍了PHP - 比较和筛选两个数组不同尺寸的的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想筛选两个数组得到与我的MySQL数据库用户ID

I am trying to filter two arrays to get a final result with user ids from my mysql database

我有两个数组第一个:

print_r($arr_partner_id);
Array ( 
[0] => Array ( [id] => 335 [id_partner] => 0 ) 
[1] => Array ( [id] => 469 [id_partner] => 1 ) 
[2] => Array ( [id] => 457 [id_partner] => 1 ) 
[3] => Array ( [id] => 339 [id_partner] => 0 ) 
[4] => Array ( [id] => 361 [id_partner] => 0 ) ) 

和第二个

print_r($arr_member_id);
Array ( 
[0] => 457 
[1] => 469 
[2] => 339 
[3] => 361 ) 

现在我想比较这两个只用自己的ID并删除不包括在$ arr_member_id阵列的ID。这是我的参考阵列这意味着我只需要IDS(457469339361)

now i want compare these two only with their ids and delete the ids that are not included in the "$arr_member_id" Array. This my "reference Array" that means i only need the ids (457,469,339,361)

对于最后的结果应该看起来像这样:

for the final result it should be looking like this:

print_r($arr_partner_final_id);
Array ( 
[0] => Array ( [id] => 469 [id_partner] => 1 ) 
[1] => Array ( [id] => 457 [id_partner] => 1 ) 
[2] => Array ( [id] => 339 [id_partner] => 0 ) 
[3] => Array ( [id] => 361 [id_partner] => 0 ) ) 

我用foreach tryed它

i tryed it with foreach

foreach ($arr_partner_id as $key => $usr_ids) {
    if($arr_partner_id[$key]['id'] ==  $arr_member_id[$key]) {
        // do something
    }   
}

但钥匙是不同的这不应该工作...

but the "keys" are different this should not working...

推荐答案

试试这个(工作例如:的http:/ /$c$cpad.org/ApFcA3Zo

Try this (Working example : http://codepad.org/ApFcA3Zo)

<?php

$arr_partner_id=array ( 
'0' => array ( 'id' => 335, 'id_partner' => 0 ) ,
'1' => array ( 'id' => 469, 'id_partner' => 1 ) ,
'2' => array ( 'id' => 457, 'id_partner' => 1 ) ,
'3' => array ( 'id' => 339, 'id_partner' => 0 ) ,
'4' => array ( 'id' => 361, 'id_partner' => 0 ) ) ;


$arr_member_id=array ( 
'0' => 457 ,
'1' => 469 ,
'2' => 339 ,
'3' => 361 ) ;

$final =array();

foreach($arr_partner_id as $arr)
{
  foreach($arr_member_id as $parr)
  {
     if($arr['id'] == $parr)
    {
    $final[]=$arr;
    }
   } 
}


print_r($final);

?>

这篇关于PHP - 比较和筛选两个数组不同尺寸的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆