Tôi thực sự thích kiểu lập trình hàm sử dụng bản đồ mảng để tạo một mảng các đối tượng từ một mảng đối tượng khác.Tôi có thể đặt các khóa của mảng bằng cách sử dụng các hàm mảng như array_map
$newObjects = array_map(
function($oldObject) {
return new NewObject($oldObject);
},
$oldObjects
);
Mà tất cả hoạt động tốt nhưng tôi thực sự muốn để có thể thiết lập các chỉ số của mảng để họ có id của các đối tượng ban đầu cho việc tìm kiếm dễ dàng hơn và hồi từ mảng nhưng tôi không thể nghĩ ra cách làm điều khác thì không thanh lịch.
$newObjects = array();
foreach ($oldObjects as $oldObject) {
$newObjects[$oldObject->getId()] = new NewObject($oldObject);
}
Có cách nào tôi có thể thực hiện việc này không?
Nhận xét ủng hộ của Devil: nhiều như tôi thích bản đồ/giảm/đi bộ, vv đôi khi một 'foreach' là giải pháp đơn giản nhất, dễ đọc :) –
Có, tôi đồng ý, ngựa cho các khóa học và tất cả. Nhìn vào gợi ý bên dưới foreach có nhiều thứ hơn cho nó về phong cách và khả năng đọc –