1) { $lastname = array_pop($names); $test = $names[count($names) - 1]; $lastnamePrefixes = ['da', 'de', 'der', 'van', 'von']; if (in_array($test, $lastnamePrefixes)) { if ($test == 'der' && $names[count($names) - 2] == 'van' || $names[count($names) - 2] == 'von' ) { $lastname = implode(' ', array_splice($names, -2)) . ' ' . $lastname; } else { array_pop($names); $lastname = $test . ' ' . $lastname; } } $firstnames = implode(" ", $names); return ['firstnames' => $firstnames, 'lastname' => $lastname]; } return $string; } }