CakePHP 特定の要素の配列を生成する

$studentオブジェクトから生徒の名前だけを取り出して配列を生成する

$student_names = collection($students)->extract('name')->toArray();

ドット区切りのパスを指定することもできる

$club_names = collection($students)->extract('club.name')->toArray();

プロパティーがパスで表現できない場合は、 コールバック関数を使用することができる

$contacts = collection($students)->extract(function ($student) {
    if($student->contact_type == "phone"){
        return $student->phone_number;
    }else if($student->contact_type == "email"){
        return $student->email_address;
    }
});