<?php
$origin = ['value1', 'value2', 'value3', '-2', '2', '22'];
$replace_map = [
'value1' => 'replace1',
'value2' => 'replace2',
'value8' => 'replace8',
2 => 77
];
var_export(
preg_replace_callback(
'~^-?\K.*$~',
function ($m) use ($replace_map) {
return $replace_map[$m[0]] ?? $m[0];
},
$origin
)
);
var_export(
preg_replace_callback('~^-?\K.*$~', fn($m)=> $replace_map[$m[0]] ?? $m[0], $origin)
);
preferences:
25.45 ms | 405 KiB | 5 Q