2012-07-05 54 views
0

我有兩個下面如何關聯給定的foreach循環?

foreach($result_access as $acc){ 
    $usr_access_id[] = $acc->id; 
    $usraccess[] = $acc->rules; 
} 

給出循環>更新的

 foreach($somearray as $someid){//Updated 
     foreach($usraccess as $accessusr){ 
      if(in_array($someid,$usraccess)){ 
      $myid = ??;///Here i want the $usraccess associated $acc->id, how can I get that? 
      } 
     } 
     } 

正如你可以看到,我想$myid得到與$acc->id應與當前$usraccess陣列

相關分配
+0

哪裏是'$ someid'而來? – Ben 2012-07-05 12:36:19

+0

它來自另一個foreach()循環 – 2012-07-05 12:40:12

回答

2

這裏是一個明智的解決方案:

foreach ($result_access as $acc) { 
    if (in_array($someid, $acc->rules)) { 
     $myid = $acc->id; 
    } 
} 

瘋狂的解決辦法是:

... 

foreach($usraccess as $i => $accessusr){ 
    if(in_array($someid,$usraccess)){ 
    $myid = $usr_access_id[$i]; 
    } 
} 
+0

對不起,對於不完整的信息,我已經更新了這個問題.... – 2012-07-05 12:39:36

+0

這並沒有真正改變任何事情但我的答案。 :) – deceze 2012-07-05 12:50:01

+0

謝謝我結合你的解決方案和@Tudor解決方案來獲得我的輸出和它的工作......再次感謝 – 2012-07-05 12:51:18

0

這是你想要的嗎?

foreach($result_access as $acc){ 
    $usr_access_id[] = $acc->id; 
    $usraccess[ $acc->id ] = $acc->rules; 
} 

foreach($usraccess as $accessusr){ 
    if(in_array($someid,$usraccess)){ 
    $myid = $usraccess[ $someid ] ;///Here i want the $usraccess associated $acc->id, how can I get that? 
    } 
} 
+0

對不完整的信息,請找到更新的問題....我還+ 1您的答案,因爲由於我的不完整的信息已被某人downvoted ..請重新查看我的問題 – 2012-07-05 12:44:58

+0

謝謝我已經結合了我的解決方案和@deceze解決方案來獲得我的pitput和它的工作...再次感謝 – 2012-07-05 12:50:53