<?php
$counter = 0;
$data = ['foo', 'bar', 'fizz', 'buzz'];
$ololo = array_reduce($data, function($carry, $item) use (&$counter) { echo $counter++ . ' ' . $item . PHP_EOL;
$carry[] = $item . '!';
return $carry;
}, []);
PD9waHAKCiRjb3VudGVyID0gMDsKJGRhdGEgPSBbJ2ZvbycsICdiYXInLCAnZml6eicsICdidXp6J107Cgokb2xvbG8gPSBhcnJheV9yZWR1Y2UoJGRhdGEsIGZ1bmN0aW9uKCRjYXJyeSwgJGl0ZW0pIHVzZSAoJiRjb3VudGVyKSB7CgllY2hvICRjb3VudGVyKysgLiAnICcgLiAkaXRlbSAuIFBIUF9FT0w7CgoJJGNhcnJ5W10gPSAkaXRlbSAuICchJzsKCXJldHVybiAkY2Fycnk7Cn0sIFtdKTsKCnZhcl9leHBvcnQoJG9sb2xvKTs=