<?php
function my_map($data, callable $func) {
$length = count($data);
for ($i=0; $i<$length; $i++) {
$data[$i] = $func( $data[$i] );
}
return $data;
}
$square = function($val) {
return $val * $val;
};
$vals = [0, 1, 2, 3, 4, 5];
var_dump( my_map($vals, $square) );
- Output for 5.5.0 - 5.5.38, 5.6.0 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.25, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.7
- array(6) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(4)
[3]=>
int(9)
[4]=>
int(16)
[5]=>
int(25)
}
preferences:
128.27 ms | 404 KiB | 240 Q