Bardzo podoba mi się funkcjonalny styl programowania korzystania z mapy tablic do tworzenia tablicy obiektów z innej tablicy obiektów.Czy mogę ustawić klucze tablicy za pomocą funkcji tablicowych, takich jak array_map
$newObjects = array_map(
function($oldObject) {
return new NewObject($oldObject);
},
$oldObjects
);
Który wszystko działa dobrze, ale naprawdę chciałbym móc ustawić indeksy tablicy tak, że są identyfikatory oryginalnych obiektów dla łatwiejszego wyszukiwania i pobierania z tablicy, ale nie mogę myśleć, jak zrób to inne, co nie jest tak eleganckie.
$newObjects = array();
foreach ($oldObjects as $oldObject) {
$newObjects[$oldObject->getId()] = new NewObject($oldObject);
}
Czy mogę to zrobić?
Komentarz adwokata diabła: tyle, ile kocham mapować/zmniejszać/chodzić itp. Czasami "foreach" jest najbardziej prostym, czytelnym rozwiązaniem :) –
Tak, zgadzam się, konie na kursy i tak dalej. Spojrzenie na sugestię poniżej foreach ma o wiele więcej, jeśli chodzi o styl i czytelność. –