2011-07-04 21 views
0

すべての配列の検索結果からPHP - 私はこのようなウィジェットコンフィグ配列持ち、オブジェクト

を新しい配列を移入:

:私はこのようなウィジェットオブジェクトの配列を持っている

Array 
( 
[0] => Array ([0] => 1 [1] => apple) 
[1] => Array ([0] => 1 [1] => orange) 
[2] => Array ([0] => 2 [1] => banana) 
) 

Array 
( 
[0] => XYZ_Widget Object ( 
          [position:XYZ_Widget:private] => 1 
          [widgetId:XYZ_Widget:private] => apple 
         ) 
[1] => XYZ_Widget Object ( 
          [position:XYZ_Widget:private] => 2 
          [widgetId:XYZ_Widget:private] => banana 
         ) 
[2] => XYZ_Widget Object ( 
          [position:XYZ_Widget:private] => 3 
          [widgetId:XYZ_Widget:private] => orange 
         ) 
) 

Widget Config配列の各配列項目に対して、widgetIdのWidgetオブジェクトの配列を検索する必要があります。見つかった場合は、見つかったアイテムで新しいWidgetオブジェクトの配列を作成する必要があります。

例:私はPHPを介してこれを行うにはどうすればよい

Array 
( 
[0] => XYZ_Widget Object ( 
          [position:XYZ_Widget:private] => 1 
          [widgetId:XYZ_Widget:private] => apple 
         ) 
[1] => XYZ_Widget Object ( 
          [position:XYZ_Widget:private] => 3 
          [widgetId:XYZ_Widget:private] => orange 
         ) 
[2] => XYZ_Widget Object ( 
          [position:XYZ_Widget:private] => 2 
          [widgetId:XYZ_Widget:private] => banana 
         ) 
) 

:ウィジェットの新しい配列は、次のようになりますウィジェットコンフィグ配列内のアイテムを検索した後に作成されたオブジェクト?

答えて

1
$result = array(); 
foreach ($configuration as $widgetConf) { 
    foreach ($widgets as $widget) { 
     if ($widgetConf[1] == $widget->widgetId) { 
      $result[] = $widget; 
      continue 2; 
     } 
    } 
} 
+0

完璧に動作します..ありがとう – Jake

関連する問題