$initialData = array(
'2x 633130A',
'2x 525130B',
'2x 591130B',
'2x 963130B',
'2x 813130B (20mm)',
'2x 813130B',
'2x 313130B (12mm)',
'2x 313130B',
'4x 413130B',
'2x 633130B',
'2x 381130A (23mm)',
'2x 381130A',
);
$filteredArray = array_filter(
$initialData,
function($value) use ($initialData) {
if (strpos($value, 'mm') === FALSE) {
foreach($initialData as $testData) {
if (strlen($testData) > strlen($value) &&
substr($testData,0,strlen($value)) == $value) {
return FALSE;
}
}
}
return TRUE;
}
);
var_dump($filteredArray);