複数のオブジェクトから取得した値の配列を取得する必要がある状況に遭遇することがよくあります。架空の状況といくつかのコードでそれを明確にしましょう。
クラスを作成したと想像してください...
class MyObject {
public $x = 0;
public $y = 0;
}
インスタンスの配列があります...
$instances = array(
new Object,
new Object,
new Object
);
x
そして、すべてのプロパティをコンマで区切られた文字列として結合したいのですが...ループを使用する必要があります...
$array = array();
foreach($instances as $instance) array_push($array, $instance->x);
$str = implode(',', $array); // holds an array of all x values
それは完全に機能しますが、パフォーマンスに少し執着しているため、不要なループやプロネイティブの実装には非常に反対です。巨大な配列をループして、すべてのインスタンスから単一のプロパティを取得することは嫌いです。
複数のオブジェクトからプロパティ値の配列を取得するネイティブな方法はありますか?もしそうなら、どのように?そうでない場合は、なぜそうしないのですか?
前もって感謝します。