- print_r: documentation ( source)
- array_flip: documentation ( source)
<?php
$array = [
'some' => 'somevalue',
'some2'=>'some2value',
'some1' => 'some1value',
'id' => 123
];
$pattern = [
'some2',
'id',
'some1',
'some'
];
function sortByTemplate($array, $pattern) {
$result = [];
foreach (array_flip($pattern) as $k => $v) {
if (isset($array[$k])) {
$result[$k] = $array[$k];
}
}
return $result;
}
print_r(sortByTemplate($array, $pattern));