2012-05-10 5 views
0

私は配列を持っている:PHP arraymマップやアイテムクラスのメソッド

array(
    0 => new SomeClass(1), 
    1 => new SomeClass(2), 
    2 => new SomeClass(3), 
) 

どのように私は、配列内の各アイテムの工assクラスのメソッド(非静的)を呼び出すように配列マップを使用することができますか?

+1

あなたは、具体的array_mapを使用する必要がありますか?またはforeachはしないでしょうか? – gunnx

+0

なぜ 'foreach'ブロックの代わりに' array_map() 'を使用していますか? –

+0

少ないコード== array_map():) – Mirgorod

答えて

3

ありarray_mapまたはarray_walkよりも読みやすい方法です:あなたが本当にarray_mapをしたい場合は

$instances = array(
    0 => new SomeClass(1), 
    1 => new SomeClass(2), 
    2 => new SomeClass(3), 
) 

foreach($instances as $instance) 
{ 
    $instance->foo(); 
} 

しかし:

array_map(function($instance) { 
    $instance->foo(); 
}, $instances); 
関連する問題