Код: Выделить всё
array_map(function($item, $index) { ... }, $items, array_keys($items));
Код: Выделить всё
array_reduce($items, array_keys($items), function($acc, $item, $index) { ... }, array());
array_reduce($items, function($acc, $item, $index) { ... }, array(), array_keys($items));
РЕДАКТИРОВАТЬ
Вот некоторый контекст относительно почему я задаю этот вопрос.
Я не хочу использовать foreach, потому что мне пришлось бы изменять массив за пределами foreach в для создания моей коллекции. Я бы предпочел избегать мутаций.
Другие языки позволяют использовать сокращение и получить доступ к текущему индексу, как в JavaScript и Ruby. Я надеялся получить ту же функцию в PHP. Ну что ж! Похоже, мне придется использовать foreach для создания моего массива, одновременно имея текущий индекс на итерации.
Подробнее здесь: https://stackoverflow.com/questions/542 ... ray-reduce
Мобильная версия