<?php
$lexer = [ // will be normalized from => to
'Vorname' => 'Vorname',
'Nachname' => 'Nachname',
'Name' => 'Nachname',
];
$validator = [ // must be present
'Vorname',
'Nachname',
];
$data = [ // raw input
'Vorname' => 'Max',
'Name' => 'Mustermann',
'Alter' => '32',
];
function normalize($data, $lexer){
$result = [];
foreach($data as $key => $val){
if(isset($lexer[$key])){
$result[$lexer[$key]] = $val;
}
}
return $result;
}
echo 'translation ';
print_r($lexer);
echo 'validation ';
print_r($validator);
echo 'raw ';
print_r($data);
echo 'normalized ';
$normalized = normalize($data, $lexer);
print_r($normalized);
echo 'diff raw ';
print_r(array_diff(array_keys($data), $validator));
echo 'diff normalized ';
print_r(array_diff(array_keys($normalized), $validator));
preferences:
25.49 ms | 402 KiB | 5 Q