3v4l.org

run code in 300+ PHP versions simultaneously
<?php $arr = array('id' => 1, 'name' => 'Fred'); $result = array_map_assoc( function ($key, $value) { return $value; }, $arr ); $result2 = array_map_assoc( function ($key, $value, $value2) { return "$value2 ($key: $value)"; }, $arr, [ 'Foo', 'Bar', ] ); var_dump($result, $result2); function array_map_assoc(callable $callback, array $array, array ...$arrays) { $keys = array_keys($array); array_unshift($arrays, $keys, $array); return array_combine($keys, array_map($callback, ...$arrays)); }
Output for 8.0.1 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.25, 8.4.1 - 8.4.12
array(2) { ["id"]=> int(1) ["name"]=> string(4) "Fred" } array(2) { ["id"]=> string(11) "Foo (id: 1)" ["name"]=> string(16) "Bar (name: Fred)" }

preferences:
78.52 ms | 407 KiB | 5 Q